summary refs log tree commit diff stats
path: root/monitor/qmp.c
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2020-04-24 10:43:37 +0200
committerMarkus Armbruster <armbru@redhat.com>2020-04-30 07:26:41 +0200
commit2061487bdba7fb9077efc09210224b42fad7d18f (patch)
tree9151306a080f737a074ab6c78994e1bbaf460a9e /monitor/qmp.c
parentea097dff0f011c07202ea7e52a421429e01ef351 (diff)
downloadfocaccia-qemu-2061487bdba7fb9077efc09210224b42fad7d18f.tar.gz
focaccia-qemu-2061487bdba7fb9077efc09210224b42fad7d18f.zip
qapi: Disallow qmp_marshal_FOO(NULL, ...)
For QMP commands without arguments, gen_marshal() laboriously
generates a qmp_marshal_FOO() that copes with null @args.  Turns
there's just one caller that passes null instead of an empty QDict.
Adjust that caller, and simplify gen_marshal().

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20200424084338.26803-15-armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'monitor/qmp.c')
-rw-r--r--monitor/qmp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/monitor/qmp.c b/monitor/qmp.c
index f89e7daf27..d433ceae5b 100644
--- a/monitor/qmp.c
+++ b/monitor/qmp.c
@@ -322,9 +322,12 @@ static QDict *qmp_greeting(MonitorQMP *mon)
 {
     QList *cap_list = qlist_new();
     QObject *ver = NULL;
+    QDict *args;
     QMPCapability cap;
 
-    qmp_marshal_query_version(NULL, &ver, NULL);
+    args = qdict_new();
+    qmp_marshal_query_version(args, &ver, NULL);
+    qobject_unref(args);
 
     for (cap = 0; cap < QMP_CAPABILITY__MAX; cap++) {
         if (mon->capab_offered[cap]) {