Browse Source

* Null pointer dereference fix. Fix json_object_get_boolean strlen test

to not return TRUE for zero length string. Remove redundant includes.
    Erik Hovland, erik at hovland dot org


git-svn-id: http://svn.metaparadigm.com/svn/json-c/trunk@31 327403b1-1117-474d-bef2-5cb71233fd97
tags/json-c-0.10-20120530
Michael Clark 16 years ago
parent
commit
22dee7cb59
5 changed files with 8 additions and 5 deletions
  1. +3
    -0
      ChangeLog
  2. +1
    -1
      arraylist.c
  3. +1
    -2
      json_object.c
  4. +3
    -0
      json_tokener.c
  5. +0
    -2
      linkhash.c

+ 3
- 0
ChangeLog View File

@@ -1,4 +1,7 @@
0.9
* Null pointer dereference fix. Fix json_object_get_boolean strlen test
to not return TRUE for zero length string. Remove redundant includes.
Erik Hovland, erik at hovland dot org
* Fixed warning reported by adding -Wstrict-prototypes
-Wold-style-definition to the compilatin flags.
Dotan Barak, dotanba at gmail dot com


+ 1
- 1
arraylist.c View File

@@ -16,7 +16,7 @@
# include <string.h>
#endif /* STDC_HEADERS */

#if HAVE_STRINGS_H
#if defined HAVE_STRINGS_H && !defined _STRING_H && !defined __USE_BSD
# include <strings.h>
#endif /* HAVE_STRINGS_H */



+ 1
- 2
json_object.c View File

@@ -22,7 +22,6 @@
#include "arraylist.h"
#include "json_object.h"
#include "json_object_private.h"
#include "json_tokener.h"

#if !HAVE_STRNDUP
char* strndup(const char* str, size_t n);
@@ -306,7 +305,7 @@ boolean json_object_get_boolean(struct json_object *this)
case json_type_double:
return (this->o.c_double != 0);
case json_type_string:
if(strlen(this->o.c_string)) return TRUE;
return (strlen(this->o.c_string) != 0);
default:
return TRUE;
}


+ 3
- 0
json_tokener.c View File

@@ -83,6 +83,9 @@ static void json_tokener_reset_level(struct json_tokener *tok, int depth)
void json_tokener_reset(struct json_tokener *tok)
{
int i;
if (!tok)
return;

for(i = tok->depth; i >= 0; i--)
json_tokener_reset_level(tok, i);
tok->depth = 0;


+ 0
- 2
linkhash.c View File

@@ -9,8 +9,6 @@
*
*/

#include "config.h"

#include <stdio.h>
#include <string.h>
#include <stdlib.h>


Loading…
Cancel
Save