From 36794a60cf2a9739d4e1b021c9ba00feef9d42da Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Fri, 25 Feb 2022 11:42:50 -0500 Subject: Allow \/ in a json string --- libqpdf/JSON.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libqpdf/JSON.cc') diff --git a/libqpdf/JSON.cc b/libqpdf/JSON.cc index 4def376e..3f96ab5d 100644 --- a/libqpdf/JSON.cc +++ b/libqpdf/JSON.cc @@ -629,6 +629,9 @@ JSONParser::decode_string(std::string const& str) { case '\\': case '\"': + case '/': + // \/ is allowed in json input, but so is /, so we + // don't map / to \/ in output. result.append(1, ch); break; case 'b': @@ -875,7 +878,7 @@ void JSONParser::getToken() case ls_backslash: /* cSpell: ignore bfnrt */ - if (strchr("\\\"bfnrt", *p)) + if (strchr("\\\"/bfnrt", *p)) { lex_state = ls_string; } -- cgit v1.2.3-54-g00ecf