diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2012-11-27 23:20:34 +0000 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2012-11-27 23:20:34 +0000 |
commit | 85cd12daeea9dd537566735ee426974a19533337 (patch) | |
tree | 57745b15205336e4c1b03e701e5f768c9da450cb /lib/json.c | |
parent | b235228768645c11d3ef138ddba839c7dd529567 (diff) |
Fixing integer size issue in JSON parser: Although I've changed the integer
type to long long, the parser was still using strtol to convert numbers,
truncating large numbers to LONG_MAX. Bug found by Artem Savkov, thanks!
Diffstat (limited to 'lib/json.c')
-rw-r--r-- | lib/json.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -484,7 +484,7 @@ json_value * json_parse_ex (json_settings * settings, const json_char * json, ch if (top->type == json_double) top->u.dbl = strtod (i, (json_char **) &i); else - top->u.integer = strtol (i, (json_char **) &i, 10); + top->u.integer = strtoll (i, (json_char **) &i, 10); flags |= flag_next | flag_reproc; } |