From: Remi Collet Date: Thu, 13 Jun 2013 11:40:01 +0000 (+0200) Subject: in strick mode, number must not start with 0 X-Git-Tag: json-c-0.12-20140410~40^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F90%2Fhead;p=thirdparty%2Fjson-c.git in strick mode, number must not start with 0 --- diff --git a/json_tokener.c b/json_tokener.c index b2b47f9d..4491cec2 100644 --- a/json_tokener.c +++ b/json_tokener.c @@ -611,6 +611,11 @@ struct json_object* json_tokener_parse_ex(struct json_tokener *tok, int64_t num64; double numd; if (!tok->is_double && json_parse_int64(tok->pb->buf, &num64) == 0) { + if (num64 && tok->pb->buf[0]=='0' && (tok->flags & JSON_TOKENER_STRICT)) { + /* in strick mode, number must not start with 0 */ + tok->err = json_tokener_error_parse_number; + goto out; + } current = json_object_new_int64(num64); } else if(tok->is_double && json_parse_double(tok->pb->buf, &numd) == 0) { current = json_object_new_double(numd);