Browse Source

Issue #371: fix parsing of "-Infinity" (although in a somewhat different location than PR#372 used), and add a case to test_parse to check for this.

tags/json-c-0.13-20171207
Eric Haszlakiewicz 7 years ago
parent
commit
4d1e0b4409
3 changed files with 3 additions and 0 deletions
  1. +1
    -0
      json_tokener.c
  2. +1
    -0
      tests/test_parse.c
  3. +1
    -0
      tests/test_parse.expected

+ 1
- 0
json_tokener.c View File

@@ -767,6 +767,7 @@ struct json_object* json_tokener_parse_ex(struct json_tokener *tok,
(c == 'i' || c == 'I'))
{
state = json_tokener_state_inf;
tok->st_pos = 0;
goto redo_char;
}
}


+ 1
- 0
tests/test_parse.c View File

@@ -57,6 +57,7 @@ static void test_basic_parse()
single_basic_parse("infinity", 0);
single_basic_parse("-Infinity", 0);
single_basic_parse("-infinity", 0);
single_basic_parse("{ \"min\": Infinity, \"max\": -Infinity}", 0);

single_basic_parse("Infinity!", 0);
single_basic_parse("Infinitynull", 0);


+ 1
- 0
tests/test_parse.expected View File

@@ -14,6 +14,7 @@ new_obj.to_string(Infinity)=Infinity
new_obj.to_string(infinity)=Infinity
new_obj.to_string(-Infinity)=-Infinity
new_obj.to_string(-infinity)=-Infinity
new_obj.to_string({ "min": Infinity, "max": -Infinity})={ "min": Infinity, "max": -Infinity }
new_obj.to_string(Infinity!)=Infinity
new_obj.to_string(Infinitynull)=Infinity
new_obj.to_string(InfinityXXXX)=Infinity


Loading…
Cancel
Save