DaveGamble / cJSON

Ultralightweight JSON parser in ANSI C
MIT License
10.83k stars 3.22k forks source link

JSONTestSuite issues with TCL extension that uses cJSON #877

Open jerily opened 4 months ago

jerily commented 4 months ago

I have build a Tcl extension (c bindings) with a slightly modified version of cJSON in order to be able to handle node deletion properly and during a forum discussion at OpenACS, the following issues were reported with JSONTestSuite ( https://github.com/nst/JSONTestSuite/archive/refs/heads/master.zip ):

[my tcl extension] raises error on the valid JSON

y_number_double_close_to_zero.json

and does not raise error on the invalid data:

n_object_trailing_comment_slash_open.json n_object_trailing_comment_slash_open_incomplete.json n_string_invalid_unicode_escape.json n_array_extra_close.json n_string_unescaped_ctrl_char.json n_structuretrailing#.json n_multidigit_number_then_00.json n_structure_number_with_trailing_garbage.json n_object_with_trailing_garbage.json n_structure_close_unopened_array.json nnumber-2..json n_string_unescaped_newline.json n_structure_whitespace_formfeed.json n_number_0.e1.json n_object_trailing_comment.json n_number_2.e3.json n_number_2.e+3.json n_number_neg_real_without_int_part.json n_structure_array_trailing_garbage.json n_string_with_trailing_garbage.json n_array_comma_after_close.json n_number_2.e-3.json nnumber-01.json n_string_unescaped_tab.json n_structure_object_followed_by_closing_object.json n_number_with_leading_zero.json n_structure_object_with_trailing_garbage.json n_object_trailing_comment_open.json n_structure_double_array.json n_number_neg_int_starting_with_zero.json n_number_real_without_fractional_part.json n_structure_array_with_extra_array_close.json

It appears that these issues might be related to how cJSON parses the input, but I could be overlooking something. Does anyone have any insights or suggestions?