Janne Kulmala
bd72efbd80
load: Avoid unexpected behaviour in macro expansion
...
Macros can be dangerous if the inserted arguments are not properly
parenthesised. As macro expansion does a simple replacement, inserting
a certain expression can cause the evaluation order of the macro expression
to change.
2012-04-18 21:21:17 +03:00
Petri Lehtinen
e8fd3e3085
Document and tweak json_load_callback()
...
Change the return value of json_load_callback_t to size_t, as it's
feels more correct. The callback should return (size_t)-1 on failure.
Issue #57 .
2012-03-26 21:53:21 +03:00
Rogerz Zhang
040bd7b0fa
Add json_load_callback()
2012-03-22 14:52:57 +08:00
Petri Lehtinen
d286e7b753
Merge branch '2.3'
2012-03-20 20:56:00 +02:00
Petri Lehtinen
3c6e36ba2d
Update copyright notices for 2012
2012-03-20 20:55:55 +02:00
Petri Lehtinen
9af64480e1
Merge branch '2.3'
2012-03-20 20:48:36 +02:00
Petri Lehtinen
4ae5736bd0
Make sure strtoll() is available when using long long
2012-03-20 20:47:57 +02:00
Petri Lehtinen
56039ed596
Merge branch '2.3'
2012-03-11 21:16:41 +02:00
Petri Lehtinen
02b915af54
Remove unused declarations
2012-03-11 21:12:52 +02:00
Petri Lehtinen
a894980258
Set master to 2.4 development mode
2012-01-30 20:59:32 +02:00
Petri Lehtinen
f227483846
jansson 2.3
2012-01-27 21:02:12 +02:00
Petri Lehtinen
6cb14dd337
Add support for optional object keys for json_unpack() and friends
...
Initial patch by Andrew Thompson.
2012-01-26 21:16:36 +02:00
Petri Lehtinen
fa268b5017
Add json_object_update_{existing,missing}
...
Closes #37 .
2012-01-24 21:03:36 +02:00
Petri Lehtinen
a307974731
Implement json_object_foreach()
...
Also change many places to use it internally to replace hand-crafted
iteration.
Closes #45 , #46 .
2012-01-24 21:01:24 +02:00
Petri Lehtinen
a2381948bb
Make hashtable less generic
...
This will make it possible to implement json_object_foreach(). It
should also have some (positive) effect on speed.
2012-01-24 21:01:23 +02:00
Petri Lehtinen
5eb2c442a9
Fix a potential memory leak
2012-01-24 20:35:59 +02:00
Petri Lehtinen
f471e63bb3
Write number of bytes read to error position on successful decode
...
Closes #49 .
2012-01-23 21:18:04 +02:00
Petri Lehtinen
bb24697d9b
Merge branch '2.2'
2011-11-14 21:16:42 +02:00
Petri Lehtinen
c4a7bf90cf
Revert "json_dump_file: Open the output file in wb mode"
...
JSON is read as text, so line endings should be preserved.
This reverts commit 32cd821273
.
2011-11-14 21:16:36 +02:00
Petri Lehtinen
bef87fc258
Merge branch '2.2'
...
Closes GH-43.
2011-11-14 21:11:18 +02:00
Andrea Marchesini
1e36667193
JSON_DECODE_ANY
...
Closes GH-4.
2011-11-14 21:10:09 +02:00
Petri Lehtinen
0f2cdd70ff
Avoid problems with object's serial number growing too big
...
Transform serial key comparison from substraction to real comparison.
Reset serial to zero in json_object_clear() to avoid it growing out of
bounds when reusing objects.
Closes GH-40.
Closes GH-41.
2011-11-14 21:01:13 +02:00
Andrea Marchesini
5ec101ec21
json_load* return NULL if the first argument is NULL
2011-11-14 20:57:41 +02:00
Petri Lehtinen
6799c8e4c9
Distribute jansson_config.h.win32
2011-11-02 07:57:19 +02:00
Petri Lehtinen
8484ea3fb2
Remove '+' and leading zeros from exponents in the encoder
...
Fixes GH-39.
2011-11-01 20:50:16 +02:00
Petri Lehtinen
bc98ab6a69
Use %I64d format for printing long longs on Windows
...
Fixes GH-38.
2011-11-01 20:49:28 +02:00
Petri Lehtinen
32cd821273
json_dump_file: Open the output file in wb mode
...
For maximum compatibility.
2011-10-07 20:52:54 +03:00
Petri Lehtinen
9c6cb42f17
jansson 2.2.1
2011-10-06 21:23:09 +03:00
Petri Lehtinen
6362032513
json_load_file: Open the input file in rb mode
...
For maximum compatibility.
2011-10-04 21:11:31 +03:00
Petri Lehtinen
f0d5c04734
Make identifier decoding work under all locales
...
Replace isxxx() functions from ctype.h with locale-independent macros.
Fixes GH-35.
2011-10-03 21:43:16 +03:00
Petri Lehtinen
fd56deb7dd
Use strchr() when searching for a single character
2011-10-03 08:52:30 +03:00
Petri Lehtinen
d7ddbf3661
Make real number encoding and decoding work under all locales
...
The decimal point '.' is changed to locale's decimal point
before/after JSON conversion to make C standard library's
locale-specific string conversion functions work correctly.
All the tests now call setlocale(LC_ALL, "") on startup to use the
locale set in the environment.
Fixes GH-32.
2011-10-02 21:31:17 +03:00
Petri Lehtinen
b6d0191e51
Implement all other encoding functions using json_dump_callback
...
This way we can check for JSON_ENCODE_ANY flag in one place only.
2011-09-24 21:10:34 +03:00
Andrea Marchesini
909874b1b9
scope error. result points to a out-of-score variable.
2011-09-20 13:10:32 +02:00
Andrea Marchesini
ff57dee13d
unsed static variable removed
2011-09-20 11:46:29 +02:00
Petri Lehtinen
889f295958
jansson 2.2
2011-09-02 21:39:40 +03:00
JKL
c7d543d36c
new typedef json_dump_callback_t, function json_dump_callback
2011-06-30 21:47:12 +03:00
JKL
cd9757512d
use size_t for strbuffer writes, and avoid integer overflow
2011-06-30 20:45:18 +03:00
Petri Lehtinen
c0193bfb7f
Check that target is string and value is not NULL in json_string_set()
2011-06-17 21:42:19 +03:00
Petri Lehtinen
86d17a8dc2
jansson 2.1
2011-06-10 21:30:11 +03:00
Petri Lehtinen
a76ba52f34
Add JSON_DISABLE_EOF_CHECK decoding flag
...
With this flag enabled, the decoder stops after a valid JSON input and
thus allows extra data after it.
Fixes GH-25.
2011-05-29 21:27:15 +03:00
Petri Lehtinen
9febdf333c
Reduce code duplication in the decoder
2011-05-29 12:53:25 +03:00
Petri Lehtinen
013b8b3f60
Clear errno before calling strtod()
...
Fixes GH-27.
2011-05-24 09:59:41 +03:00
Petri Lehtinen
49fc708d4c
Add JSON_REJECT_DUPLICATES decoding flag
...
With this flag, a decoding error is issued if any JSON object in the
input contains duplicate keys.
Fixes GH-3.
2011-05-15 13:57:49 +03:00
Petri Lehtinen
636d5f60f9
Add JSON_ENCODE_ANY flag to allow encoding any JSON value
...
Closes GH-19.
2011-05-14 12:57:12 +03:00
Petri Lehtinen
c3492973e1
Merge branch '2.0'
2011-04-21 13:15:58 +03:00
Petri Lehtinen
e20619e071
Fix a leak when memory allocation fails in json_object_set() & friends
2011-04-21 13:15:22 +03:00
Petri Lehtinen
b44e2be032
Add json_loadb() for decoding possibly non null-terminated strings
...
Thanks to Jonathan Landis for the initial patch.
2011-04-10 21:01:50 +03:00
Petri Lehtinen
4a76900bd7
Merge branch '2.0'
...
Conflicts:
doc/conf.py
src/jansson.h
2011-03-31 21:26:19 +03:00
Petri Lehtinen
1c0a3b2a55
jansson 2.0.1
2011-03-31 16:59:26 +03:00