Add 0-character during in-situ numbers-as-strings parsing
This commit is contained in:
parent
f83b2c09e8
commit
9b13eacdf1
@ -1290,9 +1290,10 @@ private:
|
|||||||
|
|
||||||
if (parseFlags & kParseInsituFlag) {
|
if (parseFlags & kParseInsituFlag) {
|
||||||
s.Pop(); // Pop stack no matter if it will be used or not.
|
s.Pop(); // Pop stack no matter if it will be used or not.
|
||||||
typename InputStream::Ch *head = is.PutBegin();
|
typename InputStream::Ch* head = is.PutBegin();
|
||||||
const size_t length = s.Tell() - startOffset;
|
const size_t length = s.Tell() - startOffset;
|
||||||
RAPIDJSON_ASSERT(length <= 0xFFFFFFFF);
|
RAPIDJSON_ASSERT(length <= 0xFFFFFFFF);
|
||||||
|
*(head + length) = '\0';
|
||||||
const typename TargetEncoding::Ch* const str = reinterpret_cast<typename TargetEncoding::Ch*>(head);
|
const typename TargetEncoding::Ch* const str = reinterpret_cast<typename TargetEncoding::Ch*>(head);
|
||||||
cont = handler.RawNumber(str, SizeType(length), false);
|
cont = handler.RawNumber(str, SizeType(length), false);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user