possible fix

This commit is contained in:
Niels 2015-02-10 22:37:07 +01:00
parent 1bbde4597b
commit 6232c78f88
2 changed files with 318 additions and 655 deletions

File diff suppressed because it is too large Load diff

View file

@ -2412,10 +2412,12 @@ class basic_json
/// constructor for strings
inline parser(const std::string& s) : buffer(s)
{
buffer += " ";
// set buffer for RE2C
buffer_re2c = reinterpret_cast<const lexer_char_t*>(buffer.c_str());
// set a pointer past the end of the buffer
buffer_re2c_limit = buffer_re2c + buffer.size();
buffer_re2c_limit = buffer_re2c + buffer.size() - 5;
// read first token
get_token();
}
@ -2429,11 +2431,13 @@ class basic_json
std::getline(_is, input_line);
buffer += input_line;
}
buffer += " ";
// set buffer for RE2C
buffer_re2c = reinterpret_cast<const lexer_char_t*>(buffer.c_str());
// set a pointer past the end of the buffer
buffer_re2c_limit = buffer_re2c + buffer.size();
buffer_re2c_limit = buffer_re2c + buffer.size() - 5;
// read first token
get_token();
}