summary refs log tree commit diff stats
path: root/qobject/json-parser.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2019-01-25 11:52:12 +0000
committerPeter Maydell <peter.maydell@linaro.org>2019-01-25 11:52:12 +0000
commit9dd0d8111fbb8015db75a38933aee1d45f9e64a3 (patch)
treea2062212ac4345164221f25d06945e26fd10de16 /qobject/json-parser.c
parent87f6a866f12b8ca037b0a5cfc2dc9b8db9e67696 (diff)
parentbbc0586ced6e9ffdfd29d89fcc917b3d90ac3938 (diff)
downloadfocaccia-qemu-9dd0d8111fbb8015db75a38933aee1d45f9e64a3.tar.gz
focaccia-qemu-9dd0d8111fbb8015db75a38933aee1d45f9e64a3.zip
Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2019-01-24' into staging
QAPI patches for 2019-01-24

# gpg: Signature made Thu 24 Jan 2019 14:25:19 GMT
# gpg:                using RSA key 3870B400EB918653
# gpg: Good signature from "Markus Armbruster <armbru@redhat.com>"
# gpg:                 aka "Markus Armbruster <armbru@pond.sub.org>"
# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867  4E5F 3870 B400 EB91 8653

* remotes/armbru/tags/pull-qapi-2019-01-24:
  json: Fix % handling when not interpolating
  qmp: Add examples to qom list, get, and set commands
  qapi: Eliminate indirection through qmp_event_get_func_emit()
  qapi: Belatedly update docs for commit 9c2f56e9f9d

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'qobject/json-parser.c')
-rw-r--r--qobject/json-parser.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/qobject/json-parser.c b/qobject/json-parser.c
index 7a7ae9e8d1..d8eb210c0c 100644
--- a/qobject/json-parser.c
+++ b/qobject/json-parser.c
@@ -208,11 +208,13 @@ static QString *parse_string(JSONParserContext *ctxt, JSONToken *token)
             }
             break;
         case '%':
-            if (ctxt->ap && ptr[1] != '%') {
-                parse_error(ctxt, token, "can't interpolate into string");
-                goto out;
+            if (ctxt->ap) {
+                if (ptr[1] != '%') {
+                    parse_error(ctxt, token, "can't interpolate into string");
+                    goto out;
+                }
+                ptr++;
             }
-            ptr++;
             /* fall through */
         default:
             cp = mod_utf8_codepoint(ptr, 6, &end);