38 lines
1.1 KiB
Diff
38 lines
1.1 KiB
Diff
From 474ee12435e671607c02f764b173258e3a059eda Mon Sep 17 00:00:00 2001
|
|
From: Eric Hawicz <erh+git@nimenees.com>
|
|
Date: Sun, 3 Nov 2024 19:44:21 -0500
|
|
Subject: [PATCH] Fix the apps/json_parse "-s" (strict) option so it actually
|
|
does something, and default to non-strict.
|
|
|
|
---
|
|
apps/json_parse.c | 13 ++++++++-----
|
|
1 file changed, 8 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/apps/json_parse.c b/apps/json_parse.c
|
|
index 31221d0..4eb629b 100644
|
|
--- a/apps/json_parse.c
|
|
+++ b/apps/json_parse.c
|
|
@@ -74,11 +74,14 @@ static int parseit(int fd, int (*callback)(struct json_object *))
|
|
fprintf(stderr, "unable to allocate json_tokener: %s\n", strerror(errno));
|
|
return 1;
|
|
}
|
|
- json_tokener_set_flags(tok, JSON_TOKENER_STRICT
|
|
-#ifdef JSON_TOKENER_ALLOW_TRAILING_CHARS
|
|
- | JSON_TOKENER_ALLOW_TRAILING_CHARS
|
|
-#endif
|
|
- );
|
|
+ if (strict_mode)
|
|
+ {
|
|
+ json_tokener_set_flags(tok, JSON_TOKENER_STRICT
|
|
+ #ifdef JSON_TOKENER_ALLOW_TRAILING_CHARS
|
|
+ | JSON_TOKENER_ALLOW_TRAILING_CHARS
|
|
+ #endif
|
|
+ );
|
|
+ }
|
|
|
|
// XXX push this into some kind of json_tokener_parse_fd API?
|
|
// json_object_from_fd isn't flexible enough, and mirroring
|
|
--
|
|
2.33.0
|
|
|