diff --git a/json_object.c b/json_object.c index fc52f5c..1515c2f 100644 --- a/json_object.c +++ b/json_object.c @@ -32,7 +32,7 @@ /* #define REFCOUNT_DEBUG 1 */ const char *json_number_chars = "0123456789.+-eE"; -const char *json_hex_chars = "0123456789abcdef"; +const char *json_hex_chars = "0123456789abcdefABCDEF"; static void json_object_generic_delete(struct json_object* jso); static struct json_object* json_object_new(enum json_type o_type); diff --git a/json_tokener.c b/json_tokener.c index df106b1..13d5acf 100644 --- a/json_tokener.c +++ b/json_tokener.c @@ -550,7 +550,7 @@ struct json_object* json_tokener_parse_ex(struct json_tokener *tok, int case_len=0; while(c && strchr(json_number_chars, c)) { ++case_len; - if(c == '.' || c == 'e') tok->is_double = 1; + if(c == '.' || c == 'e' || c == 'E') tok->is_double = 1; if (!ADVANCE_CHAR(str, tok) || !POP_CHAR(c, tok)) { printbuf_memappend_fast(tok->pb, case_start, case_len); goto out;