9735349087
Optimise while loop checks in parse_string
...
This gave an approximate 4% improvement in tests.
2023-08-10 10:13:46 +01:00
e64b984ddc
Optimise string parsing when there are no escape characters
...
This resulted in approximately 40% reduction in instructions used in
parse_string() when parsing a 4MB JSON file, as measured in callgrind.
2023-08-10 10:13:46 +01:00
bb27ffa152
Parse least common datatype last
...
Null types are almost certainly the least common object, so putting the
check last in the list will be faster.
This gave an approximate 5% performance improvement in parse_value() in
tests.
2023-08-10 10:13:46 +01:00
cb8693b058
Release 1.7.16 ( #770 )
...
* Update version to 1.7.16
* Update contributors
2023-07-05 11:22:19 +08:00
766dd9d590
Fix a null pointer crash in cJSON_ReplaceItemViaPointer ( #726 )
...
If the parent passed in cJSON_ReplaceItemViaPointer has not a child, which means parent->child is null, a null pointer dereference crash will be happened inside cJSON_ReplaceItemViaPointer.
This commit adds the NULL check of `parent->child` beforehand to inform user such incorrect usage.
Signed-off-by: hopper-vul <hopper.vul@gmail.com >
2023-07-01 16:18:32 +08:00
b45f48e600
fix: add allocate check for replace_item_in_object ( #675 )
...
Signed-off-by: Junbo Zheng <zhengjunbo1@xiaomi.com >
2022-03-29 15:02:59 +08:00
d321fa9e6e
fix: print int without decimal places ( #630 )
2022-01-19 10:30:31 +08:00
d348621ca9
chore: update version and changelog ( #610 )
2021-08-25 19:15:09 +08:00
744e47353a
fix: remove redundant condition ( #605 )
2021-08-25 15:02:00 +08:00
9226e4ed8c
Remove always true condition in cJSON.c ( #539 )
2020-12-17 17:07:18 +08:00
7b6645794d
Fix null pointer crash, closes #536 ( #538 )
2020-12-17 15:42:31 +08:00
2f6fc7f0f2
fix several null pointer problems on allocation failure ( #526 )
2020-11-12 11:46:15 +08:00
9931900768
fix: windows build failure about defining nan
2020-10-15 11:52:06 +09:00
8e357f825b
Update version to 1.7.14
2020-09-03 17:07:49 +08:00
c8ca78a3cc
optimize the way to find tail node
2020-09-02 20:23:52 +08:00
4578d3a9e1
Problem: WError error on macosx because NAN is a float
...
Solution: Add explicit cast from NAN to double
2020-06-23 09:17:32 +02:00
b95a4c56b0
fix #376
2020-06-22 11:23:24 +08:00
cb4661cd91
fix: errors in replacing the first item when array_size is 1, and replacing the last item
2020-04-03 17:21:02 +08:00
a65abf2f4f
fix: error list head's prev when detach the last item
2020-04-03 17:20:57 +08:00
3999b12848
feat: set list head's prev in parse_array and parse_object
2020-04-03 17:20:42 +08:00
ff0dabc72e
Update version to 1.7.13
2020-04-02 23:34:28 +08:00
5d55c6c2ee
fix error C2124 in visual studio
2020-04-02 23:32:30 +08:00
23e4fbc639
Merge pull request #454 from Alanscut/float-compare
...
comparing double value with DBL_EPSILON
2020-04-02 20:09:42 +08:00
65578af8cc
Merge pull request #453 from Alanscut/add-return-value
...
add return value for cJSON_AddItemTo... and cJSON_ReplaceItemxxx
2020-04-02 19:41:56 +08:00
f12cd7b701
Merge pull request #451 from Alanscut/20200324
...
add new function of `cJSON_SetValuestring`
2020-04-02 19:40:03 +08:00
97cf1d84e4
Add getNumberValue function
...
* Add GetNumberValue function and testcase
Co-authored-by: Alan Wang <wp_scut@163.com >
2020-04-02 19:36:35 +08:00
983bb2b4d6
Added cJSON_ParseWithLength ( #358 )
...
Co-authored-by: Caglar Ivriz <caglar.ivriz@siemens.com >
2020-04-02 19:24:36 +08:00
8943c73345
comparing double value with DBL_EPSILON
2020-04-02 16:02:24 +08:00
131966f748
add return value for cJSON_ReplaceItemxxx
2020-04-02 11:00:10 +08:00
bd7cbe9776
false has been redefined to cJSON_False
2020-04-01 19:19:00 +08:00
54d6b8016e
add return value for cJSON_AddItemTo...
2020-03-26 14:18:52 +08:00
31c7880fab
update cJSON_SetValuestring and testcase
2020-03-25 15:38:54 +08:00
6b35f1c5bc
add new function of setValuestringToObject
2020-03-24 22:28:15 +08:00
3ece4c893c
Improve performance of adding item to array ( #448 )
...
* use prev pointer when adding item to array
Co-authored-by: xiaomianhehe <hongshaokai@hotmail.com >
Co-authored-by: Alanscut <scut@163.com >
Date: Tue Feb 18 11:54:23 2020 +0800
* add testcase for cJSON_DeleteItemFromArray
2020-03-24 16:17:25 +08:00
9034a9cd0b
Revert "use prev pointer when array do adding ( #430 )"
...
This reverts commit e8077d0150
.
2020-03-16 23:04:39 +08:00
e8077d0150
use prev pointer when array do adding ( #430 )
...
* use prev pointer when array do adding
2020-02-18 11:54:23 +08:00
74b2f03837
remove annoying float-equal option
2020-01-18 23:18:19 +08:00
c06d8264d0
improve compare_double function
2019-12-06 18:16:27 +08:00
51f6b4c07e
Merge branch 'master' into master
2019-12-06 15:14:26 +08:00
c64854b26e
Fixed different argument between declaration and definition
2019-11-15 15:43:43 +01:00
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
66d0a1793f
Merge pull request #395 from bjda/more_const
...
Add const qualifier to cJSON_CreateStringArray
2019-10-20 22:46:05 +08:00
bcc91ecbc3
initilize variables in print_number
2019-10-19 13:53:21 +02:00
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
ae49da2b61
Revert "Replace strcpy with strncpy, sprintf with snprintf"
2019-09-21 17:42:25 +08:00
a3154a36f1
Merge pull request #388 from singku/secure_c
...
Replace strcpy with strncpy, sprintf with snprintf
2019-09-21 15:43:13 +08:00
9d766f07a7
fix const cast warnings in cJSON_GetStringValue
2019-06-28 14:22:02 +08:00
110f184d18
Fix typos.
...
Signed-off-by: Sanjeev BA <iamsanjeev@gmail.com >
2019-06-16 07:58:03 +09:00
c9e8a68b00
Fix clang -Wfloat-equal warning
2019-06-10 11:37:03 +02:00
16f56300e4
Replace strcpy with strncpy, sprintf with snprintf
2019-05-29 21:25:33 +00:00