Commit Graph

171 Commits

Author SHA1 Message Date
Max Bruckner e3e0b5150b cJSON_CreateRaw: Format fixes 2017-01-05 21:33:52 +01:00
Max Bruckner 1df987a170 cJSON_strdup: Check for NULL string 2017-01-05 21:31:17 +01:00
Max Bruckner ddadb44a67 cJSON_Raw: Additional checks in print_value 2017-01-05 21:30:37 +01:00
Max Bruckner 8c58e62597 Merge remote-tracking branch 'loigu/master' into cJSON_Raw 2017-01-05 21:07:08 +01:00
Max Bruckner fcc89c4bb2 Move increment out of loop condition fixes #85 2016-12-15 11:12:42 +01:00
Stephan e69db83de5 Temporarily disable warning when const is cast away.
There was a long running discussion here
https://github.com/DaveGamble/cJSON/pull/80 how to provide const
correctness for users of cJSON.

To avoid breaking changes for users of cJSON v1 it was decided to
disable this warning.

pragma was tested with gcc 5.4.0/6.2.1 and clang 3.8/3.9.
2016-12-08 13:21:18 +01:00
Alper Akcan 5b4420298f fix memory leak in cJSON_Duplicate 2016-12-05 14:23:04 +03:00
Max Bruckner bf17703012 Merge branch 'print_preallocated' 2016-11-28 23:08:25 +07:00
Max Bruckner 6622c54f18 Handle out of memory when printing string 2016-11-28 23:06:38 +07:00
Kyle Chisholm 8df4cd46eb more concise return 2016-11-28 22:59:55 +07:00
Kyle Chisholm 4d1dcaa160 check print_value return 2016-11-28 22:59:54 +07:00
Kyle Chisholm de93d76d0b changed to cJSON_PrintPreallocated, added flag in printbuffer 2016-11-28 22:59:53 +07:00
Kyle Chisholm 23dafa4739 added Print function call for pre-allocated buffer 2016-11-28 22:53:33 +07:00
Stephan 038b04d80a Take out len from condition check.
Otherwise, the check is just undefined behaviour. gcc even takes out
this check because len can never be zero if len does not wrap around.

Found with -Wstrict-overflow=2
2016-11-28 09:11:14 +01:00
Max Bruckner 23b269d5f9 Rename bool -> cjbool, fix #71 2016-11-25 08:19:18 +07:00
Max Bruckner 679004914f Define a boolean type
This is not changing the behavior of the code, but it is improving the
readability and helps to make the intention clearer.

One thing to take care: 'true' should never be compared against.
2016-11-19 17:29:22 +07:00
Max Bruckner b88da9b0de Initialize all variables 2016-11-19 17:29:21 +07:00
Max Bruckner a5ff796c20 Replace 0 with more expressive NULL or '\0' 2016-11-19 17:28:14 +07:00
Max Bruckner dc4b62915a fix #10, now failing on incorrect escape sequences 2016-11-14 19:33:03 +07:00
Max Bruckner afd690d1c9 format fix 2016-11-14 19:14:14 +07:00
Jiri Zouhar 06008b0444 add support to insert raw json 2016-11-14 11:20:10 +01:00
Max Bruckner 0d10e279c8 fix #55 memory leak in cJSON_ReplaceItemInObject 2016-11-11 11:53:14 +07:00
Max Bruckner a148520ffb Revert "Fix #26: Use long double literal for 1e60"
This reverts commit 3ea491c0a6.
2016-11-08 00:53:16 +07:00
Max Bruckner b4d728d018 pow2gt: Detect integer size fix #27 2016-11-07 20:09:58 +07:00
Max Bruckner 3ea491c0a6 Fix #26: Use long double literal for 1e60
Big thanks at mvollmer (https://sourceforge.net/p/cjson/bugs/45/)
2016-11-05 21:26:18 +07:00
Max Bruckner 4d06882c68 Merge pull request #44 from iMobs/arm_compilation
ARM Compilation
2016-11-01 08:42:45 +07:00
Rod Vagg 5323f558cd don't ignore malloc failure in cJSON_PrintBuffered 2016-10-31 10:54:34 +11:00
Max Bruckner a1c022fef6 Merge pull request #37 from DaveGamble/reformatting
Reformat cJSON_Utils.c and test.c
2016-10-29 22:52:55 +07:00
Max Bruckner ddeca82718 reformatting: cJSON.c: fix indentation 2016-10-29 22:44:45 +07:00
Jonathan Fether 9f00ff9a91 Remove redundant test from cJSON_AddItemToArray
The test for whether "c" is null is redundant.  Since this is the else case of "(!c)", and the only way "c" is changed is by the instruction assigning it "c->next" on the condition here, simply verifying that "c->next" isn't null is sufficient.
2016-10-27 20:02:44 -07:00
Ian Mobley d4836effc9 Fix compiler warning "array subscript has type char" when using arm-none-eabi-gcc 2016-10-17 17:20:57 -07:00
Ian Mobley b393b3beeb Add const qualifier for non-destructive functions
Functions like cJSON_Print do not and should not modify the object passed
to them.
2016-10-07 15:42:11 -07:00
Max Bruckner 34388c2d4c reformatting: cJSON_Minify 2016-10-02 19:04:30 +07:00
Max Bruckner 9adc6e7fe1 reformatting: cJSON_Duplicate 2016-10-02 19:04:30 +07:00
Max Bruckner e6fd236f00 reformatting: cJSON_CreateStringArray 2016-10-02 19:04:29 +07:00
Max Bruckner e272f7285e reformatting: cJSON_CreateDoubleArray 2016-10-02 19:04:29 +07:00
Max Bruckner 890b999e59 reformatting cJSON_CreateFloatArray 2016-10-02 19:04:29 +07:00
Max Bruckner f831aef5c1 reformatting: cJSON_CreateIntArray 2016-10-02 19:04:28 +07:00
Max Bruckner 21a0a88f19 reformatting: cJSON_CreateObject 2016-10-02 19:04:28 +07:00
Max Bruckner e241081020 reformatting: cJSON_CreateArray 2016-10-02 19:04:28 +07:00
Max Bruckner 034003ce2b reformatting: cJSON_CreateString 2016-10-02 19:04:28 +07:00
Max Bruckner 3f9f4970b4 reformatting: cJSON_CreateNumber 2016-10-02 19:04:27 +07:00
Max Bruckner 99f61f2b35 reformatting: cJSON_CreateBool 2016-10-02 19:04:27 +07:00
Max Bruckner a0b5d6b13a reformatting: cJSON_CreateFalse 2016-10-02 19:04:27 +07:00
Max Bruckner fdfb9fff86 reformatting: cJSON_CreateTrue 2016-10-02 19:04:27 +07:00
Max Bruckner cf7835b67d reformatting: cJSON_CreateNull 2016-10-02 19:04:26 +07:00
Max Bruckner 3a8043273e reformatting: cJSON_ReplaceItemInObject 2016-10-02 19:04:26 +07:00
Max Bruckner dc8eb30467 reformatting: cJSON_ReplaceItemInArray 2016-10-02 19:04:26 +07:00
Max Bruckner 69dcfcf238 reformatting: cJSON_InsertItemInArray 2016-10-02 19:04:26 +07:00
Max Bruckner 207bb05e8c reformatting: cJSON_DeleteItemFromObject 2016-10-02 19:04:25 +07:00