From 5a7ae6c3074720f5e122375ed3de0d3047e61ff6 Mon Sep 17 00:00:00 2001 From: Attila Kovacs Date: Sun, 29 Sep 2024 10:47:02 +0200 Subject: [PATCH] xjson: Missing commas between fields --- src/xjson.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/xjson.c b/src/xjson.c index 52a7718..dd7e8e6 100644 --- a/src/xjson.c +++ b/src/xjson.c @@ -466,6 +466,9 @@ static XStructure *ParseObject(char **pos, int *lineNumber) { f->value = ParsePrimitive(&next, &f->type, lineNumber); } + if(*next == ',') + next++; + f = xSetField(s, f); if(f) xDestroyField(f); // If duplicate field, destroy the prior one. } @@ -887,7 +890,7 @@ static int GetFieldStringSize(int prefixSize, const XField *f) { prop_error(fn, m); - return m + strlen(f->name) + 4; // name + " = " + value + "\n" + return m + strlen(f->name) + 5; // name + " = " + value + ",\n" } @@ -908,6 +911,7 @@ static int PrintField(const char *prefix, const XField *f, char *str) { prop_error(fn, m); n += m; + if(f->next) n += sprintf(&str[n], ","); n += sprintf(&str[n], "\n"); return n; }