Merge pull request #125 from niwatako/fix-loss-of-buffer-in-nsjsonserialization

Fix loss of buffer in NSJSONSerialization.
This commit is contained in:
rfm 2020-05-01 16:38:04 +01:00 committed by GitHub
commit d4dc2dafc9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -468,11 +468,16 @@ parseNumber(ParserState *state)
{\
bufferSize *= 2;\
if (number == numberBuffer)\
number = malloc(bufferSize);\
{\
number = malloc(bufferSize);\
memcpy(number, numberBuffer, sizeof(numberBuffer));\
}\
else\
number = realloc(number, bufferSize);\
{\
number = realloc(number, bufferSize);\
}\
}\
number[parsedSize++] = (char)x; } while (0)
number[parsedSize++] = (char)x; } while (0)
// JSON numbers must start with a - or a digit
if (!(c == '-' || isdigit(c)))
{