From 874a609959d9db428b0aaa2be8441cc5f286e4ae Mon Sep 17 00:00:00 2001 From: Arun Raghavan Date: Wed, 3 Apr 2024 12:56:52 -0400 Subject: [PATCH] json: Allow non-ASCII UTF-8 strings Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1398 Part-of: --- src/pulsecore/json.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pulsecore/json.c b/src/pulsecore/json.c index e2010e9fc..51bbea9ae 100644 --- a/src/pulsecore/json.c +++ b/src/pulsecore/json.c @@ -148,9 +148,10 @@ static const char* parse_string(const char *str, pa_json_object *obj) { while (*str && *str != '"') { if (*str != '\\') { - /* We only accept ASCII printable characters. */ - if (*str < 0x20 || *str > 0x7E) { - pa_log("Invalid non-ASCII character: 0x%x", (unsigned int) *str); + /* JSON specifies that ASCII control characters 0x00 through 0x1F + * must not appear in the string. */ + if (*str < 0x20) { + pa_log("Invalid ASCII character: 0x%x", (unsigned int) *str); goto error; }