Max Bruckner
010e31f2f2
handle null pointers: cJSON_CreateIntArray
2017-06-28 14:21:55 +02:00
Max Bruckner
8ea37fce01
handle null pointers: replace_item_in_object
2017-06-28 14:21:48 +02:00
Max Bruckner
b2fe02712d
handle null pointers: cJSON_AddItemReferenceToObject
2017-06-28 14:21:42 +02:00
Max Bruckner
c179509b31
handle null pointers: cJSON_AddItemReferenceToArray
2017-06-28 14:21:34 +02:00
Max Bruckner
46c4f55c94
handle null pointers: cJSON_AddItemToObjectCS
2017-06-28 14:21:26 +02:00
Max Bruckner
90ff72c8bb
handle null pointers: create_reference
...
Also fixes a potential memory leak
2017-06-28 14:21:09 +02:00
Max Bruckner
e9d1de24cf
handle null pointers: cJSON_GetArraySize
2017-06-28 14:20:58 +02:00
Max Bruckner
56f2bc6f3e
handle null pointers: cJSON_PrintPreallocated
2017-06-28 14:20:47 +02:00
Max Bruckner
cdc35ebf88
handle null pointers: cJSON_AddItemToObject
2017-06-28 14:20:34 +02:00
Max Bruckner
2a3a313f83
cJSON_PrintBuffered: Fix potential memory leak
2017-06-27 23:10:19 +02:00
Max Bruckner
a2a2411b12
Release version 1.5.5
2017-06-14 18:07:25 +02:00
Max Bruckner
03ba72faec
cJSON_Compare: Fix comparison of objects
...
It did consider two arrays equal if one is a subset of te other one,
which is incorrect.
See #180
2017-06-14 17:48:56 +02:00
Max Bruckner
569aa060c6
cJSON_Compare: Fix comparison of arrays
...
It did consider two arrays equal if one is a prefix of the other one,
which is incorrect.
See #180
2017-06-14 17:48:56 +02:00
Max Bruckner
9189b3322a
Release v1.5.4
2017-06-04 21:31:45 +02:00
Max Bruckner
00d5e225a6
Release version 1.5.3
2017-05-22 22:59:32 +02:00
Max Bruckner
9ecc96878f
fix #174 : cJSON_ReplaceItemInObject doesn't copy name
2017-05-22 22:55:05 +02:00
Max Bruckner
de5df3e56f
Release version 1.5.2
2017-05-10 02:25:25 +02:00
Max Bruckner
a167d9e381
Fix reading buffer overflow in parse_string
2017-05-10 02:09:01 +02:00
Max Bruckner
186cce3ece
Fix -Wcomma
2017-05-10 00:52:33 +02:00
Max Bruckner
6c9f76c100
Release version 1.5.1
2017-05-06 08:42:59 +02:00
Max Bruckner
1217ca9e9f
Release version 1.5.0
2017-05-02 02:34:55 +02:00
Max Bruckner
2d6a2e0133
Merge branch 'develop' prepare v1.5.0
2017-05-02 02:30:26 +02:00
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
05f75e360b
Release Version 1.4.7
2017-04-18 21:35:21 +02: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
Max Bruckner
b0dfcde04c
Release Version 1.4.4
2017-03-23 22:13:25 +01:00
Max Bruckner
1934059554
ensure: Validate buffer offset
2017-03-23 22:01:38 +01:00
Max Bruckner
cc84a446be
ensure: Fix potential off by one error.
2017-03-23 22:01:16 +01:00
Max Bruckner
e58f7ec027
ensure: Fix potential overflow of size_t
...
This could only happen if the maximum SIZE_T is not at least 2 times
bigger than INT_MAX. Not sure if this can happen on real systems, but
better be safe then sorry.
2017-03-23 20:26:29 +01:00
Max Bruckner
b7ce06224b
Release version 1.4.3
2017-03-19 11:05:33 +01:00
Max Bruckner
227d3398d6
Fix the pragmas for Wcast-qual with old gcc versions
2017-03-18 17:52:33 +01:00
Max Bruckner
466eb8e3f8
Fix wconversion with old gcc (e.g. 4.3)
2017-03-18 17:52:04 +01:00
Max Bruckner
a1b37d0abe
Release Version 1.4.2
2017-03-16 01:28:23 +01:00
Max Bruckner
e3d5798896
Release version 1.4.1
2017-03-15 20:11:19 +01:00
Max Bruckner
cf1842dc6f
fix: print_number didn't abort when out of memory
2017-03-15 00:09:45 +01:00
Max Bruckner
030d0c14cc
Merge branch 'develop' (Release 1.4.0)
2017-03-03 23:26:52 +01:00
Max Bruckner
02cd3eec37
Update version number to 1.4.0
2017-03-03 23:21:53 +01:00
Max Bruckner
0bb1843925
print_value: return as soon as possible
2017-03-03 00:40:02 +01:00
Max Bruckner
5ea4fad263
print_string: return boolean instead of pointer
2017-03-03 00:33:11 +01:00
Max Bruckner
1749de02f8
print_number: return boolean instead of pointer
2017-03-03 00:26:58 +01:00
Max Bruckner
748f4bfd4f
print_object: return boolean instead of pointer
2017-03-03 00:21:34 +01:00
Max Bruckner
bea1d102fd
print_array: return boolean instead of pointer
2017-03-03 00:16:54 +01:00
Max Bruckner
d441fa05b3
print_value: return boolean instead of pointer
2017-03-03 00:11:43 +01:00
Max Bruckner
d8d0ae66d3
print_number: Fix incorrect output pointer
2017-03-02 23:57:01 +01:00
Max Bruckner
9d07917feb
utf16_literal_to_utf8: Eliminate Duff's Device
...
This fixes -Wimplicit-fallthrough warnings with GCC7.
2017-03-02 13:46:31 +01:00
Max Bruckner
6405fd15e3
CMake: Set default visibility to hidden and dllexport on windows
2017-03-01 23:19:35 +01:00
Max Bruckner
2d3520e0b9
Use own cJSON_bool boolean type in the header
2017-03-01 22:50:12 +01:00
Max Bruckner
412f4f7d62
Use CJSON_PUBLIC for typecheck functions
2017-03-01 22:47:45 +01:00
Max Bruckner
dd4cb5400f
print_number: Remove unnecessary integer handling
2017-03-01 13:28:27 +01:00
Max Bruckner
1ea72f8260
print_number: Remove trailing zeroes (for doubles)
2017-03-01 13:22:32 +01:00
Max Bruckner
e78bc42362
print_number: Return buffer + offset instead of beginning of the number
2017-03-01 13:00:52 +01:00
Max Bruckner
6f271e511f
print_number: Use sprintf's return value
...
This is used to update the buffer offset and determine success
2017-03-01 12:56:32 +01:00