Aaron Jacobs
e3d0eca9f4
Centralized assertion macros and made them obey JSON_USE_EXCEPTION.
2011-05-24 01:03:22 +00:00
Aaron Jacobs
a77a803c85
Made two security fixes.
2011-05-24 00:43:59 +00:00
Aaron Jacobs
73911f2e33
Fixed a hard to debug crash on OS X related to sscanf format strings.
...
See here for more info:
http://developer.apple.com/library/mac/#DOCUMENTATION/DeveloperTools/gcc-4.0.1/gcc/Incompatibilities.html
2011-05-24 00:41:12 +00:00
Baptiste Lepilleur
eadc478e50
Fixed typo: amalga*ma*te. Replaced macro JSON_IS_AMALGATED with JSON_IS_AMALGAMATION
2011-05-02 21:09:30 +00:00
Baptiste Lepilleur
e3cc0f004b
Untabified some sources
2011-05-02 18:41:01 +00:00
Baptiste Lepilleur
e0e1fd37cd
- Bug #3200841 : removed "warning C4127: conditional expression is constant" concerning infinite loop by replacing while (true) with for (;;). Added new JSON_FAIL macro. Commented unused parameters.
2011-05-02 16:51:48 +00:00
Baptiste Lepilleur
d0a9f3d98d
Bug #3200841 : removed "warning C4127: conditional expression is constant" concerning infinite loop by replacing while (true) with for (;;).
2011-05-02 09:54:49 +00:00
Baptiste Lepilleur
64e40aafe5
Added support for amalgated source and header generation (a la sqlite). Refer to README.txt section "Generating amalgated source and header" for detail.
...
The amalgated sources are generated by concatenating JsonCpp source in the correct order and defining macro JSON_IS_AMALGATED to prevent inclusion of other headers. Sources and header has been modified to prevent any inclusion when this macro is defined.
The script amalgate.py handle the generation.
2011-05-01 20:13:40 +00:00
Baptiste Lepilleur
b2e8cccbc6
Renamed Reader::getFormatedErrorMessages() to getFormattedErrorMessages. Bug #3023708 (Formatted has 2 't'). The old member function is deprecated but still present for backward compatibility.
2011-05-01 16:27:55 +00:00
Baptiste Lepilleur
99043b32b5
Fixed bug #3139678 : stack buffer overflow when parsing a double with a length of 32 characters.
2011-05-01 15:47:38 +00:00
Baptiste Lepilleur
9c98f2277b
Fixed bug #3139677 : JSON [1 2 3] was incorrectly parsed as [1, 3]. Error is now correctly detected.
...
Modified runjsontests.py to allow test that expect failure in jsoncpp test suite.
2011-05-01 15:40:47 +00:00
Baptiste Lepilleur
842e9ac54b
Major rework of 64 integer support: 64 bits integer are only returned when explicitly request via Json::Value::asInt64(), unlike previous implementation where Json::Value::asInt() returned a 64 bits integer.
...
This eases porting portable code and does not break compatibility with the previous release.
Json::Value::asLargestInt() has also be added to ease writing portable code independent of 64 bits integer support. It is typically used to implement writers.
2010-12-27 17:45:23 +00:00
Baptiste Lepilleur
7469f1d014
JsonCpp is now licensed under MIT license, or public domain if desired and recognized in your jurisdiction.
2010-04-20 21:35:19 +00:00
Baptiste Lepilleur
201fb2cf0d
- Moved definition of Json::Int and Json::UInt to config.h which compiler detection logic to define them to 64 bits integer if JSON_NO_INT64 is not defined.
...
- Added Json::ArrayIndex as an unsigned int to forwards.h
- Modified Json::Value to consistently use Json::ArrayIndex.
- Added int/unsigned int constructor overload to Json::Value to avoid ambiguous constructor call.
- Modified jsontestrunner/main.cpp to use Json::valueToString for Value::asInt() conversion to string.
- Modified Json::Reader to only overflow to double when the number is too large (previous code relied on the fact that an int fitted in a double without precision loss).
- Generalized uintToString() helpers and buffer size to automatically adapt to the precision of Json::UInt.
- Added specific conversion logic for UInt to double conversion on Microsoft Visual Studio 6 which only support __int64 to double conversion (unsigned __int64 conversion is not supported)
- Added test for 64 bits parsing/writing. Notes: those will fail when compiled with JSON_NO_INT64 (more dev required to adapt).
2010-04-19 07:37:41 +00:00
Baptiste Lepilleur
d38ba2a2cb
- extracted some utility functions out-of reader and parser.
2010-03-13 12:24:38 +00:00
Baptiste Lepilleur
f179a180bd
Fixed comment after value in object value signaled by Frederic Surleau.
2009-11-18 22:25:34 +00:00
Baptiste Lepilleur
8868147835
- added Features class that describes allowed extension for Reader, to allow for strict configuration
...
- added tests from json.org jsonchecker and modified jsontestrunner to use strict parsing mode when executing them
2009-11-18 21:38:54 +00:00
Malay Shah
ee4b4dab54
Implementing support for reading and writing Unicode escape sequences.
2009-11-13 04:21:14 +00:00
Christopher Dunn
8f5ddcfa8d
Added cstring for memcpy(), as suggested by sebastien.vincent@turnserver.org . This allows gcc-4 to compile. Removed doxygen from SConstruct, since it is now broken; I have been unable to get it to work with either scons 0.97 or scons 2.1; hopefully someone else can get that working again.
2009-05-11 20:04:10 +00:00
Christopher Dunn
b2f720456e
Added prop svn:eol-style native. Stripped carriage-returns on unix. Hopefully, this will work for Windows too now.
2007-06-13 15:48:30 +00:00
Christopher Dunn
f153eaaed0
Fixed 2.95.3 header probs
2007-03-23 10:19:49 +00:00
Christopher Dunn
56a1d6cbf5
Added istream/ostream funcs/operators
2007-03-23 09:57:01 +00:00
Christopher Dunn
ce1f32981b
[1611376]writer now escapes special characters. When no special chars are present, old behavior is retained. New method might have a performance penalty b/c of operator new inside std::string. (This would not exist if the whole thing operated on ostream instead, I think.)
2007-03-23 05:56:39 +00:00
Christopher Dunn
fe536c0631
[1587188]Fixed parsing of comment at tail of object.
2007-03-23 05:04:38 +00:00
Baptiste Lepilleur
4cd8bae331
- reorganized repository to match standard layout
2007-03-15 22:11:38 +00:00