summaryrefslogtreecommitdiff
path: root/json.c
Commit message (Collapse)AuthorAgeFilesLines
* Still more whitespace fixupsGary E. Miller2015-04-301-2/+2
|
* Retire splint from our set of static analyzers.Eric S. Raymond2015-03-301-22/+5
| | | | | | | | | | | | | | | | | | | The proximate cause was that we've been seing emission of error messages that were randomly and disturbingly variable across different environments - notably Raspbian and Gentoo splint gave nontrivially different results than Ubuntu 14.10 splint. And this was *not* due to Ubuntu patches! A pristine splint built from the 3.1.2 tarball on Ubuntu didn't match the Raspbian and Gentoo results either. But this has been coming for a while. Easy access to more modern static analyzers such as coverity, scan-build and cppcheck has been decreasing the utility of splint, which is unmaintained and somewhat buggy and not easy to use. Only file not cleaned is ppsthread.c, because Gary has been working on it during this cleanup. All regression tests pass. PPS observed live on GR601-W.
* Fix erroneous comment.Eric S. Raymond2015-03-091-1/+1
|
* OS X needs a lot of time.hGary E. Miller2015-03-081-0/+1
| | | | | | gpsd_config.h needs time_t which is in time.h OS X builds now. Untested.
* Add str_{,v}appendf, use it everywhere.Zbigniew Chyla2015-01-211-2/+2
| | | | This change doesn't affect generated binary code.
* Add str_starts_with macro, use it instead of strncmp.Zbigniew Chyla2015-01-211-2/+2
| | | | This change doesn't affect generated binary code.
* Always use sizeof to get array sizeZbigniew Chyla2015-01-131-1/+1
| | | | | | Don't use constant/expression from an array's definition when referring to its size. Eliminates redundancy and avoids problems when array size changes. The change doesn't affect generated code.
* Note for anyone wo might want to re-use this.Eric S. Raymond2014-09-281-1/+5
|
* More microjson resync. All regression tests pass.Eric S. Raymond2014-09-281-64/+14
|
* Resynchronize with microjson.Eric S. Raymond2014-09-281-4/+21
|
* Cosmetic cleanup. All regression tests pass.Eric S. Raymond2014-09-271-22/+24
|
* Remove some unnecessary copies, All regression tests pass.Eric S. Raymond2014-09-271-23/+19
|
* Appease splint. All regression tests pass.Eric S. Raymond2014-09-271-22/+22
|
* Reconcile json.c with microjson's copy. All regression tests pass.Eric S. Raymond2014-09-271-8/+102
|
* Condition out extended JSON features.Eric S. Raymond2014-09-221-0/+2
| | | | All regression tests pass.
* Implement and test extended JSON array parsing.Eric S. Raymond2014-09-221-6/+44
| | | | | | Now supported: JSON arrays with int, unit, bool, and real elements. All regressiion tests pass.
* Typo fixes. All regression tests pass.Eric S. Raymond2014-09-171-4/+4
|
* Typo fixes.Eric S. Raymond2014-09-171-2/+2
|
* Silence compiler warnings about array subscripts of type 'char'Matt2014-09-101-11/+11
| | | | | | | | | | | | | | | | | | | | Cygwin GCC complains about code like isprint(c), where c is of type char. The isX() and toX() functions/macros (ISO C allows either) all accept an int, whose value should be either that of an unsigned char, or the special value EOF (== -1). So cast to unsigned char each argument to isprint, tolower, etc. Silences several warnings of the form: gpsutils.c: In function 'safe_atof': gpsutils.c:90:5: warning: array subscript has type 'char' [-Wchar-subscripts] while (isspace(*p)) { ^ gpsutils.c:188:2: warning: array subscript has type 'char' [-Wchar-subscripts] while (isdigit(*p)) { ^
* splint cleanup.Eric S. Raymond2013-10-011-0/+1
|
* The JSON parser now has an "ignore" type...Eric S. Raymond2013-10-011-2/+7
| | | | ...and it's used for the new dependent _text attributes.
* Nuke trailing whitespace in C source.Eric S. Raymond2012-09-071-3/+3
|
* Comply strictly with strict-aliasing rules by using memcpy...ukyg9e5r6k7gubiekd62012-09-071-9/+24
| | | | | | | | ...rather than using type-punning pointer casts. With optimization this will generate similarly-performing or even identical code on most architectures/compilers. Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* json parser: fix empty array bugChristian Gagneraud2012-06-201-0/+7
|
* Get rid of nullbool default - not used, and it causes a bad smell to Coverity.Eric S. Raymond2012-05-111-5/+1
|
* Armor the JSON code against zeroed value or attribute pointers.Eric S. Raymond2012-05-101-0/+9
| | | | | Should never happen, but having the bailout logic in plavce creates static invariants that should banish a bunch of Coverity warnings.
* Avoid locale problems in the NMEA driver, too.Eric S. Raymond2011-08-271-208/+2
|
* Optimize a bit. All regression tests pass.Eric S. Raymond2011-08-271-39/+30
|
* Avoid locale problems by inlining an old BSD version of strtod().Eric S. Raymond2011-08-271-6/+216
| | | | | This solves Berlios tracker bug #18328: Wrong/bad locale handling in json_read_object. All regression tests (including the JSON unit test) pass.
* Add an explanatory note.Eric S. Raymond2011-08-101-0/+1
|
* Use t_time consistently for timestamps.Eric S. Raymond2011-04-161-0/+2
| | | | All regression tests pass. Livetesting with cgps looks good.
* Cosmetic tweak: t_timestamp -> t_time.Eric S. Raymond2011-04-161-7/+7
|
* Add a 'timestamp' type to the JSON parser to solve a compatibility problem.Eric S. Raymond2011-04-151-3/+12
| | | | | | | Sigh, no other way to get DEVICELIST to recignize both new and old timestamps. All regression tests pass.
* scan-build and splint cleanup. All regression tests pass.Eric S. Raymond2011-03-291-6/+6
|
* Magic-number and strncpy elimination. All regression tests passEric S. Raymond2011-03-291-1/+1
|
* More conditioning out of code for minimal build.Eric S. Raymond2011-03-291-0/+6
|
* Library time parsing is now backward-compatible with 2.95.Eric S. Raymond2011-03-101-0/+34
|
* More deheader testing.Eric S. Raymond2011-01-121-0/+1
|
* Comment typo fixes.Eric S. Raymond2011-01-121-2/+2
|
* Insert SuS headers required for portablity, as revealed by deheader.Eric S. Raymond2010-12-221-2/+3
|
* Clients are no longer required to define a gpsd_report() hook.Eric S. Raymond2010-12-191-2/+2
|
* Prevent JSON parsing from becoming confused by client locales other than C.Eric S. Raymond2010-12-171-1/+8
| | | | Fixes Berlios tracker bug #17379: problem with different locale.
* Reindent. All regression tests pass.Eric S. Raymond2010-04-261-2/+2
| | | | | Most of the bulk of this one is the xgpsspeed code, which was not formerly incldecd in reindenting.
* Extended AIS idempotency test coverage to messages 22, 23, 24.Eric S. Raymond2010-04-261-1/+4
| | | | ...and in doing so, fix a bug in AIS parsing.
* Re-indent JSON support. All regression tests pass.Eric S. Raymond2010-04-141-2/+1
|
* Reindent the JSON stuff. All regression tests pass.Eric S. Raymond2010-04-141-94/+123
|
* Vanish away Id and Rev $ keywords, git won't expand them to anything useful.Eric S. Raymond2010-03-131-5/+4
|
* Copyright stamps everywhere. No code changes.Eric S. Raymond2010-03-111-1/+5
|
* Avoid a collision with typedef boolean.Eric S. Raymond2010-01-041-45/+45
| | | | All regression tests pass.
* Add and document some client-side instrumentation.Eric S. Raymond2009-11-241-0/+2
|