Fix JSON parser WRT start symbol
authorAdam Dickmeiss <adam@indexdata.dk>
Wed, 20 Jan 2010 14:05:19 +0000 (15:05 +0100)
committerAdam Dickmeiss <adam@indexdata.dk>
Wed, 20 Jan 2010 14:05:19 +0000 (15:05 +0100)
The start grammar symbol (referred to as JSONText in ECMA-262) is
JSONValue, not JSONObject.

src/json.c
test/tst_json.c

index 4c41613..6c34fcb 100644 (file)
@@ -420,7 +420,7 @@ struct json_node *json_parser_parse(json_parser_t p, const char *json_str)
     p->buf = json_str;
     p->cp = p->buf;
 
-    n = json_parse_object(p);
+    n = json_parse_value(p);
     if (!n)
         return 0;
     c = look_ch(p);
index 8720290..eace27e 100644 (file)
@@ -49,9 +49,9 @@ static void tst1(void)
 
     YAZ_CHECK(expect(p, "", 0));
 
-    YAZ_CHECK(expect(p, "1234", 0));
+    YAZ_CHECK(expect(p, "1234", "1234"));
 
-    YAZ_CHECK(expect(p, "[ 1234 ]", 0));
+    YAZ_CHECK(expect(p, "[ 1234 ]", "[1234]"));
 
     YAZ_CHECK(expect(p, "{\"k\":tru}", 0));