633 Commits

Author SHA1 Message Date
Max Bruckner
b00ecfd311 Merge commit '48b390994642e59eb1a461922a646b4c6544693c' into develop 2017-05-01 18:02:03 +02:00
Max Bruckner
48b3909946 Squashed 'tests/json-patch-tests/' changes from 716417e..5405313
5405313 Add tests for replacing the root document (#30)

git-subtree-dir: tests/json-patch-tests
git-subtree-split: 54053131a31241ecccfffdc79753ff169aa9763c
2017-05-01 18:02:03 +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
28570ad095 Add test for cJSON_SetNumberHelper 2017-04-28 14:41:24 +02:00
Max Bruckner
303660ae04 Remove test_utils. (Replaced by old_utils_tests and json_patch_tests) 2017-04-28 13:58:51 +02:00
Max Bruckner
18a7828940 Merge branch 'generate-patch-tests' into develop 2017-04-28 02:00:40 +02:00
Max Bruckner
7fe8d53c19 Use json-patch-tests to test generation of tests with cJSON_Utils 2017-04-28 01:59:54 +02:00
Max Bruckner
ee3c3bc80e cJSONUtils_GeneratePatches: Fix multiple removes in arrays 2017-04-27 21:32:18 +02:00
Max Bruckner
18b4e2f941 Update Unity to release 2.4.1 2017-04-27 02:55:04 +02:00
Max Bruckner
ab77a80e9b Squashed 'tests/unity/' changes from 1f52255..f96c055
f96c055 this is a minor release
2c7629a Documentation Updates
b8bfb01 Add support for AStyle in test makefile. It’s going to assume you have it installed.
e36d8b5 Merge pull request #276 from wolf99/pdf-to-markdown
1e43967 Add EACH_EQUAL changes
e2cc679 Add newlines after headings for best practice, trim trailing spaces & convert sneaky incorrectly coded chars
192d517 Remove PDFs
c48f6c9 Add Github Markdown versions of documents
2a5b24f Finished updating all Ruby scripts to match our coding standard. Woo!
3e0a712 Started to flesh out rubocop settings for this project. Added rakefile tasks to do so. Updated first script to make it compliant.
23f9c16 Another round of fixing things that the stylizer “corrected” for me.
3a6cca3 Fixed things that the stylizer “autocorrected” to wrong. ;)
3062c39 Starting to enforce our coding style. The first step is that we’ve pulled in Rubocop to check out Ruby syntax. There is likely a bit of customization to do yet AND there is definitely that backlog of todo’s that we just told it to ignore.
550d58b Attempt to fix remaining issues with casting
ee038c2 Ha! Forgot to add the correct comment style
d6b3508 Clean up some const issues, particularly when moving between single and double pointers
4ffafce Finish updating documentation to match
083564b Update docs to also understand the new Each Equal handlers
0dddf49 also update strings to support each element of an array.
a11a137 Added memory each equal assertion
d8d67a7 Added each_equal assertions for float and double
b7956ea Added more tests for all the numerical types when performing each_equal assertions
7fe3191 Added some tests to prove this works. Still work in progress
56eeacd prepare for comparing value to array by setting up explicit compare of array to array in ints
7b80885 Merge pull request #272 from FSMaxB/gcc43-wconversion
0781e74 Add our coding standard to documentation
c3658a0 Dropped support for pre-2.0 versions of Ruby (not even rubylang supports them anymore)
8a45ccf Use custom mock prefix when searching for mock header files. #263
689610b reorder includes in generated test runners
43c7511 stdlib.h explicitly called in fixtures when malloc used, now. (Fixes issue #268)
1c556d2 Fix -Wconversion with gcc-4.3
8723d50 Turn UNITY_OUTPUT_FLUSH off by default. Added a quick-define for the most common case: UNITY_USE_FLUSH_STDOUT. Clarified documentation. Fixes issue #269
c67a4ff - Add ability to detect TEST_FILE(“filename.c”) specifications in test files
41ee499 Tiny tweaks to make Unity fit in more smoothly with Ceedling

git-subtree-dir: tests/unity
git-subtree-split: f96c05532b3e00c9ca77e58fc07f9401cd46510d
2017-04-27 02:54:33 +02: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
Max Bruckner
5aa152fa83 Merge pull request #157 from mhrobinson/cJSON_Free-api
Document cJSON_free API
2017-04-26 09:11:36 +02:00
Mike Robinson
a400888c1f Document cJSON_free API 2017-04-25 23:58:44 -07:00
Debora Grosse
3fc9bc0648 cJSON: Fix print_number to print significant digits of doubles 2017-04-20 10:55:09 -04:00
Max Bruckner
6ccfd5d603 tests: Move most of test_utils.c to old_utils_tests 2017-04-18 14:11:14 +02:00
Max Bruckner
49ebc85e7a Move ApplyPatch tests from test_utils.c to json. 2017-04-13 20:15:25 +02:00
Max Bruckner
8fd46d51b1 Put generated files in library_config subdirectory 2017-04-12 21:49:36 +02:00
Max Bruckner
609bb75421 cJSON_Utils: Use cJSON_free and cJSON_malloc 2017-04-12 21:28:31 +02:00
Max Bruckner
b759ff38b8 Merge pull request #150 from DaveGamble/json-patch-tests
Add json-patch/json-patch-tests for testing JSON patch implementation
2017-04-12 20:54:18 +02:00
Max Bruckner
ba7b48b3f3 Enable json-patch-tests tests 2017-04-12 20:50:04 +02:00
Max Bruckner
134ebf5e89 cJSONUtils_ApplyPatches: Handle replacement of root 2017-04-12 20:50:04 +02:00
Max Bruckner
02a05eea4e cJSON: Add cJSON_malloc and cJSON_free 2017-04-12 20:50:03 +02:00
Max Bruckner
d67b008d4b decode_array_index_from_pointer: parse manually
This allows checking for leading zeroes and invalid characters after the index
2017-04-12 12:06:27 +02:00
Max Bruckner
c66342d871 cJSON_Utils: Use enum for opcode 2017-04-12 11:36:14 +02:00
Max Bruckner
c960b2b853 cJSON_Utils: Fix size_t support of cJSONUtils_GetPointer 2017-04-12 11:21:48 +02:00
Max Bruckner
3056d85f01 cJSON_Utils: Use new helper function 2017-04-12 11:21:21 +02:00
Max Bruckner
b470d918f3 cJSONUtils: add decode_array_index_from_pointer as common helper function 2017-04-12 11:07:21 +02:00
Max Bruckner
8efb287ae2 cJSONUtils_ApplyPatches: Fail if removal failed 2017-04-12 10:44:29 +02:00
Max Bruckner
a1602f484b cJSONUtils_ApplyPatches: Don't accept invalid array indices 2017-04-12 10:34:15 +02:00
Max Bruckner
d058a9cd8f cJSON_ApplyPatches: Don't allow adding to array out of bounds 2017-04-11 17:40:43 +02:00
Max Bruckner
62ba68fc7d cJSONUtils_ApplyPatches: Fix not accepting arrays
This was completely broken, arrays weren't accepted.
2017-04-11 16:38:51 +02:00
Max Bruckner
7276f4df05 Squashed 'tests/json-patch-tests/' content from commit 716417e
git-subtree-dir: tests/json-patch-tests
git-subtree-split: 716417e71e328e116dc1e98b903b434578bc1a1c
2017-04-11 14:45:28 +02:00
Max Bruckner
8c900b9e07 Merge commit '7276f4df051bc58af8a2da7d3199517d43d37582' as 'tests/json-patch-tests' 2017-04-11 14:45:28 +02:00
Max Bruckner
e0a3c2370d Merge pull request #148 from DaveGamble/cjson-compare
cJSON_Compare
2017-04-11 14:37:15 +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
31400affab Contributors: Add Pawel Winogrodzki 2017-04-08 17:56:30 +02:00
Max Bruckner
6c3df7eb59 cJSON_ParseWithOpts: Fix -Wmissing-field-initializers 2017-04-08 17:56:30 +02:00
Max Bruckner
a99d254e4f License: Add other contributors 2017-04-08 17:56:29 +02:00
Max Bruckner
f0230a584f Merge pull request #139 from PawelWMS/develop_W4_fixes
Fixing all /W4 level warnings.
2017-04-08 17:56:29 +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
bc0bb7c224 parse_with_opts: test return_parse_end 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
770e8263a5 tests for cJSON_ParseWithOpts 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 v1.4.6 2017-04-08 17:54:55 +02:00
Max Bruckner
bb5ab5916f Merge pull request #147 from DaveGamble/copy-paste-msvc
Fix copy pasting with MSVC
2017-04-08 17:26:02 +02:00
Max Bruckner
411c50f671 Don't redefine CJSON_EXPORT_SYMBOLS 2017-04-08 16:39:35 +02:00
Max Bruckner
ec2db50b6f dllexport symbols by default and add CJSON_IMPORT_SYMBOLS
This should fix copy pasting of the C and header files with the MSVC
compiler.
2017-04-08 15:54:14 +02:00
Max Bruckner
74d0525201 Merge pull request #146 from DaveGamble/locale-independence
Locale independence
2017-04-08 14:46:22 +02:00
Max Bruckner
3efef58c32 README: Add setlocale to caveats 2017-04-08 03:50:22 +02:00
Max Bruckner
65541b900c Update space requirements of cJSON_PrintPreallocated 2017-04-08 03:42:44 +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
50b3c30dfa README: Add Caveats section 2017-04-08 02:19:27 +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
ab8489a851 Readme: Fix #143 item->name --> item->string 2017-04-06 09:56:23 +02:00
Max Bruckner
795c3acabe cJSON_Utils: Fix potential null pointer dereference
Found by coverity
2017-04-05 17:36:25 +02:00
Max Bruckner
2683d4d987 ensure: Fix overflow detection 2017-04-05 16:35:55 +02:00
Max Bruckner
3c1bfe125c Clarify deprecation of valueint 2017-04-02 23:24:53 +02:00
Max Bruckner
5916f70640 cJSON.h: Deprecate valueint 2017-04-01 22:56:04 +02:00
Max Bruckner
29cfc7a767 README: Get rid of valueint and do necessary checks 2017-04-01 22:24:48 +02:00
Max Bruckner
b1e9a6c0da README: Add missing round brackets 2017-04-01 22:24:27 +02:00
Max Bruckner
3a20692c18 Release version 1.4.5 v1.4.5 2017-03-28 17:39:39 +02:00
Max Bruckner
2f65e80a34 Fix internal compiler error in GCC on x86 2017-03-28 17:32:20 +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 v1.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
4bfb880093 cJSON.h: Note about buffer size for cJSON_PrintPreallocated 2017-03-22 16:39:10 +01:00
Max Bruckner
b7ce06224b Release version 1.4.3 v1.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