Commit Graph

316 Commits

Author SHA1 Message Date
Max Bruckner dede4e3246 Add cJSON_ReplaceItemInObjectCaseSensitive 2017-05-02 01:18:55 +02:00
Max Bruckner 8b953d1202 Add cJSON_ReplaceItemViaPointer 2017-05-02 01:18:55 +02:00
Max Bruckner 2d07bbc9b2 Add cJSON_DeleteItemFromObjectCaseSensitive 2017-05-02 00:36:10 +02:00
Max Bruckner 8816a568ab Add cJSON_DetachItemFromObjectCaseSensitive 2017-05-02 00:34:17 +02:00
Max Bruckner 33193ea557 Internal function get_array_item 2017-05-02 00:27:33 +02:00
Max Bruckner acb0ca88df Use cJSON_DetachItemViaPointer internally 2017-05-01 23:59:14 +02:00
Max Bruckner c24c3e0285 Add cJSON_DetachItemViaPointer 2017-05-01 23:58:04 +02:00
Max Bruckner 87fad25c2b Merge pull request #153 from DeboraG/print_number_prec
cJSON: Fix print_number to print significant digits of doubles
2017-04-29 19:56:58 +02:00
Debora Grosse a69ad22639 Remove test for negative zero, as -0 is acceptable output 2017-04-29 13:08:10 -04:00
Max Bruckner 949c083315 Move 'hooks' parameter into buffers (parse/print) 2017-04-27 02:48:28 +02:00
Max Bruckner c4c217f2ce Move 'format' into printbuffer 2017-04-27 02:21:09 +02:00
Max Bruckner 79f30800ec Move print depth into printbuffer 2017-04-27 02:10:03 +02:00
Max Bruckner e0d3a8a265 Limit nesting depth to 1000 and make it configurable. 2017-04-27 01:57:45 +02:00
Debora Grosse 3fc9bc0648 cJSON: Fix print_number to print significant digits of doubles 2017-04-20 10:55:09 -04:00
Max Bruckner 02a05eea4e cJSON: Add cJSON_malloc and cJSON_free 2017-04-12 20:50:03 +02:00
Max Bruckner 6ac896d8d2 cJSON_Compare: New function to compare json 2017-04-08 17:57:36 +02:00
Max Bruckner 2a25abbf2a Deduplicate code for cJSON_GetObjectItem 2017-04-08 17:57:36 +02:00
Max Bruckner e9803341d5 simplify and rename cJSON_strcasecmp
Two NULL strings should not be considered equal for the purpose of
cJSON.
2017-04-08 17:57:36 +02:00
Max Bruckner 6c3df7eb59 cJSON_ParseWithOpts: Fix -Wmissing-field-initializers 2017-04-08 17:56:30 +02:00
Pawel Winogrodzki 2148e3277a Renaming "min" to "cjson_min". 2017-04-08 17:56:29 +02:00
Pawel Winogrodzki c786cd9714 Adding back "const". 2017-04-08 17:56:29 +02:00
Pawel Winogrodzki 238ceec175 Fixing all W4-level warnings. 2017-04-08 17:56:29 +02:00
Max Bruckner 6702037b68 cJSON_Delete: Improve readability 2017-04-08 17:56:28 +02:00
Max Bruckner eb5000ba61 cJSON_strdup: improve readability 2017-04-08 17:56:28 +02:00
Max Bruckner 655c26ada1 cJSON_strcasecmp: Improve readability 2017-04-08 17:56:28 +02:00
Max Bruckner 218b0c8dcf cJSON_Print: Use reallocate if available
This can reduce worst case peak memory usage by 30% depending on the
realloc implementation.
2017-04-08 17:56:28 +02:00
Max Bruckner 281df6997c Update copyright 2017-04-08 17:56:27 +02:00
Max Bruckner 56a32f9ecc Use error_position instead of error pointer internally 2017-04-08 17:56:27 +02:00
Max Bruckner 2683589d93 parser: Construct error pointer from buffer offset 2017-04-08 17:56:26 +02:00
Max Bruckner c837177a56 utf16_literal_to_utf8: Support \u0000 2017-04-08 17:56:26 +02:00
Max Bruckner 80bc7652ae cJSON_ParseWithOptions: Remove end pointer 2017-04-08 17:56:26 +02:00
Max Bruckner 87a204ed0b parse_functions: Return booleans instead of pointers 2017-04-08 17:56:26 +02:00
Max Bruckner c9739c59fd Replace strchr with switch case
This should improve performance and improve readability.
2017-04-08 17:56:25 +02:00
Max Bruckner 778a0c146f parse_string: Use parsebuffer 2017-04-08 17:56:25 +02:00
Max Bruckner f69b109c9f parse_number: Use parse_buffer 2017-04-08 17:56:25 +02:00
Max Bruckner fef1c45b92 parse_object: Use parse_buffer 2017-04-08 17:56:25 +02:00
Max Bruckner 033a542532 parse_array: Use parsebuffer 2017-04-08 17:56:25 +02:00
Max Bruckner fd0320cf54 parse_value: Use parse_buffer 2017-04-08 17:56:24 +02:00
Max Bruckner 0f98214e71 parsebuffer: type and macros 2017-04-08 17:56:24 +02:00
Max Bruckner 06a2326e3b cJSON_ParseWithOpts: Use goto fail 2017-04-08 17:56:24 +02:00
Max Bruckner 11131b9ced cJSON_ParseWithOptions: Improve variable names and intent 2017-04-08 17:56:24 +02:00
Max Bruckner 99db5db9a4 Release version 1.4.6 2017-04-08 17:54:55 +02:00
Max Bruckner c08f7e1d29 print_number: Make locale independent
This first prints the number into a temporary buffer and then copies the
number to the output.

A positive side effect is that cJSON no longer reserves more space for
the number in the output than is necessary.
2017-04-08 03:38:49 +02:00
Max Bruckner 71b96afc27 print_number: Fix comment (missing word 'zeroes') 2017-04-08 02:46:24 +02:00
Max Bruckner 749fefc0c4 Make parse_number locale independent 2017-04-08 02:41:36 +02:00
Max Bruckner c784f76c77 cJSON_strdup: Use sizeof("") instead of 1 2017-04-08 01:29:19 +02:00
Max Bruckner 84237ff48e Replace sizeof('\0') with sizeof("")
Because sizeof('\0') is actually sizeof(int) not sizeof(char).
2017-04-08 01:29:19 +02:00
Max Bruckner 2683d4d987 ensure: Fix overflow detection 2017-04-05 16:35:55 +02:00
Max Bruckner 3a20692c18 Release version 1.4.5 2017-03-28 17:39:39 +02:00
Max Bruckner ef34500693 cJSON_SetNumberHelper: Fix valueint, closes #138
Thanks @mmkeeper
2017-03-28 17:29:52 +02:00