Commit Graph

107 Commits

Author SHA1 Message Date
Max Bruckner 25632fad13 reformatting: parse_object 2016-10-02 19:04:22 +07:00
Max Bruckner 782770c6ba reformatting: print_array 2016-10-02 19:04:21 +07:00
Max Bruckner ad711e6fab reformatting: parse_array 2016-10-02 19:04:21 +07:00
Max Bruckner a9f752e034 reformatting: print_value: 255 -> 0xFF 2016-10-02 19:04:21 +07:00
Max Bruckner de4dc19e72 reformatting: print_value 2016-10-02 19:04:21 +07:00
Max Bruckner c5f635d24a reformatting: parse_value 2016-10-02 19:04:20 +07:00
Max Bruckner 9b7eb6a46d reformatting: cJSON_PrintBuffered 2016-10-02 19:04:20 +07:00
Max Bruckner ec46581b68 reformatting: cJSON_PrintUnformatted 2016-10-02 19:04:20 +07:00
Max Bruckner 1748902d3c reformatting: cJSON_Print 2016-10-02 19:04:20 +07:00
Max Bruckner f36d9c9ef2 reformatting: cJSON_Parse 2016-10-02 19:04:19 +07:00
Max Bruckner e809022349 reformatting: cJSON_ParseWithOpts 2016-10-02 19:04:19 +07:00
Max Bruckner f1dd51bfb5 reformatting: skip 2016-10-02 19:04:19 +07:00
Max Bruckner d42febea50 reformatting: Predeclared print prototypes 2016-10-02 19:04:18 +07:00
Max Bruckner 7423692586 reformatting: print_string 2016-10-02 19:04:18 +07:00
Max Bruckner c71cd6cc1c reformatting: print_string_ptr 2016-10-02 19:04:18 +07:00
Max Bruckner c88d045888 reformatting: parse_string 2016-10-02 19:04:16 +07:00
Max Bruckner 2e2dc873b2 reformatting: firstByteMark 2016-10-02 19:01:27 +07:00
Max Bruckner e10f2bf08d reformatting: parse_hex4 2016-10-02 19:01:27 +07:00
Max Bruckner 67845e3dc6 reformatting: print_number 2016-10-02 19:01:27 +07:00
Max Bruckner 282006d918 reformatting: update 2016-10-02 19:01:26 +07:00
Max Bruckner 7f9a2691bf reformatting: ensure 2016-10-02 19:01:26 +07:00
Max Bruckner b53ce73709 reformatting: printbuffer 2016-10-02 19:01:26 +07:00
Max Bruckner d5bd497636 reformatting: pow2gt 2016-10-02 19:01:26 +07:00
Max Bruckner 88cbe57ba4 reformatting: parse_number 2016-10-02 19:01:25 +07:00
Max Bruckner 46cfa68a2b reformatting: cJSON_Delete 2016-10-02 19:01:25 +07:00
Max Bruckner 55488f66f6 reformatting: cJSON_New_Item 2016-10-02 19:01:25 +07:00
Max Bruckner 8db7e6d320 reformatting: cJSON_InitHooks 2016-10-02 19:01:25 +07:00
Max Bruckner 18081c03c4 reformatting: cJSON_strdup 2016-10-02 19:01:24 +07:00
Max Bruckner 542ed727d7 reformatting: cJSON_strcasecmp 2016-10-02 19:01:24 +07:00
Max Bruckner c42b774f9f reformatting: cJSON_GetErrorPtr 2016-10-02 19:01:24 +07:00
Max Bruckner 94df772485 fix buffer overflow (#30) 2016-10-02 18:56:53 +07:00
Dave Gamble 2fe50bd557 get rid of isnormal test!! 2016-05-29 16:19:14 +01:00
Dave Gamble 87f55416c1 we can safely remove this, since the initial d==0 case catches this. 2016-05-29 16:01:06 +01:00
Dave Gamble e6b352d126 tidy up some code that was added a while back. 2016-03-20 00:24:41 +00:00
Dave Gamble b4151361de Allow for global/local error pointers. If you supply a return_parse_end
to cJSON_ParseWithOpts, then that will store the error pointer (if
parsing fails).
2016-03-19 18:41:44 +00:00
Dave Gamble fe967cd1ff extra checking for memory allocation failure. 2016-03-19 18:14:19 +00:00
Dave Gamble ee579ecbd6 Integrate patch for handling broken unicode surrogate pairs, with
thanks to kolman and Irwan Djajadi on SourceForge.
2016-03-19 18:14:06 +00:00
Christian Schulze 52d7d14f6c fixed segfault when the lib tries to parse HTML with embedded CSS; provided test case 2016-03-06 16:43:53 +01:00
Max Bruckner 8222e9b8c4 Fix printing of empty string pointers
Once the check if str is NULL is reached, str has already been
derereferenced in the for loop, so in the case that the if clause would
be entered, the program has already crashed due to a null pointer
dereference.

By checking the content of str before dereferencing, the code in the if
clause is actually useful.

for (ptr=str;*ptr;ptr++) flag|=((*ptr>0 && *ptr<32)||(*ptr=='\"')||(*ptr=='\\'))?1:0;

...

if (!str)
...
2015-10-26 03:08:47 +01:00
Max Bruckner 9cc37a2844 Fix format problem with empty objects
When printing empty objects, the closing curly brace was missing one
indentation level.

Example from the output of test_utils:

BEFORE FIX:
{
	"foo":	"bar",
	"child":	{
		"grandchild":	{
	}
	}
}

AFTER FIX:
{
	"foo":	"bar",
	"child":	{
		"grandchild":	{
		}
	}
}
2015-10-26 02:43:44 +01:00
Max Bruckner 7c25dc9135 Remove line that will never be executed 2015-10-16 15:01:24 +02:00
Kevin Branigan 8865d869db cJSON_HasObjectItem didn’t compile 2015-10-01 12:03:27 -04:00
Kevin Branigan 1e1de63244 Merge pull request #13 from rmeertens/master
added cJSON_HasObjectItem
2015-10-01 11:37:44 -04:00
Linus Wallgren e4b96fa820 Handle invalid numbers
Previously cJSON generated invalid JSON when a number was infinite or
similar. This patch changes the behaviour to match javascript, that is
to render such a number as null.
2015-10-01 17:27:59 +02:00
Roland Meertens b175877d8b +usefull function 2015-09-15 02:40:27 +02:00
Anton Sergeev 74793934ad Merge latest upstream code (r73) into github fork.
Signed-off-by: Anton Sergeev <Anton.Sergeev@elecard.ru>

Conflicts:
	cJSON.c
	test.c
2015-07-28 03:48:06 +06:00
DongwenHuang 10b888be54 Update cJSON.c 2015-06-15 17:13:22 +08:00
Dave Gamble 1d9b70e706 Fix comment style for proper ansi c compliance.
git-svn-id: svn://svn.code.sf.net/p/cjson/code@69 e3330c51-1366-4df0-8b21-3ccf24e3d50e
2015-02-13 19:07:29 +00:00
Dave Gamble 9d0a4cbf2a adjust the test very slightly
git-svn-id: svn://svn.code.sf.net/p/cjson/code@68 e3330c51-1366-4df0-8b21-3ccf24e3d50e
2015-02-11 11:34:01 +00:00
Dave Gamble b44a338c6d Optimise out escapable array.
git-svn-id: svn://svn.code.sf.net/p/cjson/code@67 e3330c51-1366-4df0-8b21-3ccf24e3d50e
2015-02-11 11:31:35 +00:00