415 Commits

Author SHA1 Message Date
xiaomianhehe
e8077d0150
use prev pointer when array do adding (#430)
* use prev pointer when array do adding
2020-02-18 11:54:23 +08:00
Alanscut
74b2f03837 remove annoying float-equal option 2020-01-18 23:18:19 +08:00
Alanscut
c06d8264d0 improve compare_double function 2019-12-06 18:16:27 +08:00
Alanscut
51f6b4c07e
Merge branch 'master' into master 2019-12-06 15:14:26 +08:00
rolegic
c64854b26e Fixed different argument between declaration and definition 2019-11-15 15:43:43 +01:00
Alanscut
18dad60035
Merge pull request #377 from Alanscut/20190628
fix bug: add const to the parameter in the cJSON_GetStringValue function
2019-10-20 22:47:11 +08:00
Alanscut
66d0a1793f
Merge pull request #395 from bjda/more_const
Add const qualifier to cJSON_CreateStringArray
2019-10-20 22:46:05 +08:00
Julian Ste
bcc91ecbc3
initilize variables in print_number 2019-10-19 13:53:21 +02:00
Bernt Johan Damslora
26772a8ef7 Add const qualifier to cJSON_CreateStringArray
Adds a const qualifier to the strings in the array to avoid discarding
it from arguments.
2019-10-17 14:03:15 +02:00
Alanscut
ae49da2b61
Revert "Replace strcpy with strncpy, sprintf with snprintf" 2019-09-21 17:42:25 +08:00
Alanscut
a3154a36f1
Merge pull request #388 from singku/secure_c
Replace strcpy with strncpy, sprintf with snprintf
2019-09-21 15:43:13 +08:00
Alanscut
9d766f07a7 fix const cast warnings in cJSON_GetStringValue 2019-06-28 14:22:02 +08:00
Sanjeev BA
110f184d18 Fix typos.
Signed-off-by: Sanjeev BA <iamsanjeev@gmail.com>
2019-06-16 07:58:03 +09:00
Paweł Malowany
c9e8a68b00 Fix clang -Wfloat-equal warning 2019-06-10 11:37:03 +02:00
singku
16f56300e4 Replace strcpy with strncpy, sprintf with snprintf 2019-05-29 21:25:33 +00:00
Max Bruckner
687b1a2fe1 Update version to 1.7.12 2019-05-16 20:03:12 +02:00
Max Bruckner
08d2bc766a Fix infinite loop in cJSON_Minify 2019-05-16 20:01:02 +02:00
Max Bruckner
0b5a7abf48
Merge pull request #340 from ldm0/master
Typo Fix
2019-04-15 23:06:11 +02:00
Max Bruckner
6b249213dd Fix clang -Wcomma warning 2019-04-15 00:06:35 +02:00
Max Bruckner
09ebae8149 Release cJSON 1.7.11 2019-04-14 23:58:02 +02:00
Max Bruckner
a43fa56a63 Rewrite cJSON_Minify, fixing buffer overflows, fixes #338
Also first tests for cJSON_Minify.
Thanks @bigric3 for reporting
2019-04-14 23:18:48 +02:00
Max Bruckner
5a52eaddfd Undef true and false first, fixes #339
Thanks  @raiden00pl for reporting
2019-04-13 01:44:23 +02:00
Donough Liu
add86a6be8 Update cJSON.c 2019-03-18 22:56:34 +08:00
Max Bruckner
c69134d017 Release Version 1.7.10 2018-12-20 18:15:05 +01:00
Max Bruckner
f110bd2e58 Release Version 1.7.9 2018-12-16 11:17:20 +01:00
Max Bruckner
be749d7efa Fix crash of cJSON_GetObjectItemCaseSensitive when calling it on arrays 2018-12-16 11:06:40 +01:00
Benbuck Nason
8e742e4869 Fix most of the issues reported by the Visual Studio code analysis tool. 2018-10-12 14:29:59 -07:00
Max Bruckner
08103f048e Release version 1.7.8 2018-09-21 19:29:42 +02:00
Zach Hindes
f32703a7a1 Support default __stdcall calling convention (/Gz) on Windows 2018-08-29 16:25:46 -05:00
Max Bruckner
86234db095 Release cJSON v1.7.7 2018-05-21 22:08:21 +02:00
Max Bruckner
af5b4911de Fix memory leak if realloc returns NULL
Thanks @AlfieDeng for reporting
2018-05-21 22:00:07 +02:00
Max Bruckner
3349978268 cJSON.c: Remove unnecessary include of float.h, fix #259 2018-04-26 23:58:51 +02:00
Max Bruckner
cbc05de76f Release version 1.7.6 2018-04-13 12:32:30 +08:00
Max Bruckner
0e0c463491 Release version 1.7.5 2018-03-22 20:29:17 +01:00
Max Bruckner
5da9edc8b1 Release version 1.7.4 2018-03-02 19:57:36 +01:00
Max Bruckner
22a7d04fa0 add_item_to_object: Fix use-after-free when string is aliased
If the `string` property of the item that is added is an alias to the
`string` parameter of `add_item_to_object`, and `constant` is false,
`cJSON_strdup` would access the string after it has been freed.

Thanks @hhallen for reporting this in #248.
2018-03-02 19:49:55 +01:00
Max Bruckner
a559eac472 Release version 1.7.3 2018-02-07 21:16:35 +01:00
Max Bruckner
d514bb866e Fix #241, potential double free 2018-02-07 19:36:59 +01:00
Max Bruckner
27caa364b0 Release version 1.7.2 2018-02-06 11:38:41 +01:00
Max Bruckner
b60b5d3744 Update version to 1.7.1 2018-01-09 21:59:42 +01:00
Max Bruckner
4d84acf926 print_number: fix Off-By-One error
Thanks @liuyunbin for reporting this in #230
2018-01-09 21:40:55 +01:00
Max Bruckner
28d4410f42 print: fix: realloc was allocating too much memory
Thanks @liuyunbin for reporting this in #230
2018-01-09 20:53:33 +01:00
Max Bruckner
f33fa95f3d print: Fix default buffer size in printbuffer
Thanks @liuyunbin for reporting this in #230
2018-01-09 20:49:03 +01:00
Max Bruckner
13a2d337a8 Update version number to 1.7 2017-12-31 02:03:40 +01:00
Max Bruckner
5865faffa3 Convert cJSON_Add...ToObject macros into functions
These functions return the added object. Functions to add objects and
arrays have also been added.
2017-12-28 23:56:39 +01:00
Max Bruckner
de729a1635 Extract add_item_to_object function that returns a boolean 2017-12-28 21:40:24 +01:00
Max Bruckner
55c597c719 add_item_to_array with boolean return value 2017-12-28 12:45:28 +01:00
Max Bruckner
11844dd5a6 Add cJSON_Create{Array,Object}Reference 2017-11-28 03:06:02 +01:00
Max Bruckner
1f543f0e28 cast_away_const: Generalize for void* 2017-11-28 02:05:02 +01:00
Max Bruckner
eaa90a6b74 Add cJSON_CreateStringReference 2017-11-28 02:02:55 +01:00
Max Bruckner
440390a9a5 extract function cast_away_const_from_string 2017-11-28 01:54:21 +01:00
Max Bruckner
b2afbd3c9f cJSON_GetStringValue 2017-11-15 18:47:49 +01:00
yangfl
fa00278f66 Remove trailing space 2017-11-04 21:19:15 +08:00
Max Bruckner
c083421f40 Release version 1.6.0 2017-10-08 23:36:41 +02:00
Max Bruckner
96c33e5abb ENABLE_LOCALES: Actually disable the include as well 2017-10-08 23:28:49 +02:00
Max Bruckner
97d7347a6e Merge branch 'develop' 2017-10-08 22:05:02 +02:00
casperinous
9b960fa870 Small indentation fix in order to follow the contribution rules. 2017-10-08 22:02:52 +03:00
casperinous
4f9e9dfc30 Fix for issue #202, regarding the lack of implementation of the localeconv method in some SDK's.
A macro named `ENABLE_LOCALES` was added and an option with the same name too in the CMakeLists.txt
2017-10-08 21:55:58 +03:00
Max Bruckner
afd5d186b7 Release version 1.5.9 2017-09-08 13:54:24 +02:00
rmallins
629c354390 Rewrite test for cJSON_ParseWithOpts() to expect non-null error
pointer in error case and change code to match new expectations.
2017-09-08 01:22:10 +01:00
Max Bruckner
1925d1bbe5 Release version 1.5.8 2017-08-21 11:06:10 +02:00
Max Bruckner
88d66c5da9 Release version 1.5.7 2017-07-12 23:13:14 +02:00
Max Bruckner
954d61e5e7 Fix #189, ensure returns an invalid pointer
If realloc returns NULL, ensure didn't abort but returned
printbuffer.offset instead. If an attacker can control
printbuffer.offset and also make realloc fail at just the right moment,
this would make cJSON potentially write at an arbitrary memory address.
2017-07-12 23:02:31 +02:00
Max Bruckner
5baa77f86c cJSON_Parse{,WithOpts}: Skip UTF-8 (Byte Order Marks) 2017-07-03 22:28:04 +02:00
Max Bruckner
7a2615c231 Fix: Check if __GNUCC__ is defined
This has been detected via MSVC's Warning C4668
2017-06-28 17:28:51 +02:00
Max Bruckner
ac368e9dfb MSVC: Fix warning about assignment in condition 2017-06-28 17:28:51 +02:00
Max Bruckner
d1c2e2df4a MSVC: workaround for C2322 2017-06-28 17:28:51 +02:00
Max Bruckner
0d675cb048 MSVC: Disable warning about single line comments in system headers 2017-06-28 17:28:50 +02:00
Max Bruckner
e872d40223 MSVC: Disable deprecation warnings for C89 functions
C89 sadly doesn't provide safe alternatives for strcpy, sprintf and the
like.
2017-06-28 17:28:50 +02:00
Max Bruckner
38b2f40a9a Add warning -Wunused-macro 2017-06-28 17:28:49 +02:00
Max Bruckner
d3bc571a38 Release Version 1.5.6 2017-06-28 17:25:14 +02:00
Max Bruckner
24ea388dcf handle null pointers: cJSON_Minify 2017-06-28 14:22:36 +02:00
Max Bruckner
39745c9c75 handle null pointers: cJSON_ReplaceItemViaPointer 2017-06-28 14:22:29 +02:00
Max Bruckner
9585c38d5a handle null pointers: cJSON_CreateStringArray 2017-06-28 14:22:22 +02:00
Max Bruckner
c268e77b21 handle null pointers: cJSON_CreateDoubleArray 2017-06-28 14:22:15 +02:00
Max Bruckner
9f745a2251 handle null pointers: cJSON_CreateFloatArray 2017-06-28 14:22:07 +02:00
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