@@ -4,6 +4,7 @@
#include "qapi/qmp/qdict.h"
#include "qapi/qmp/qint.h"
#include "qapi/qmp/qbool.h"
+#include "qapi/qmp/qstring.h"
#include "libqtest.h"
static char *get_cpu0_qom_path(void)
@@ -25,11 +26,14 @@ static char *get_cpu0_qom_path(void)
static QObject *qom_get(const char *path, const char *prop)
{
- QDict *resp = qmp("{ 'execute': 'qom-get',"
- " 'arguments': { 'path': %s,"
- " 'property': %s } }",
- path, prop);
- QObject *ret = qdict_get(resp, "return");
+ QDict *args = qdict_new();
+ QDict *resp;
+ QObject *ret;
+
+ qdict_put_str(args, "path", path);
+ qdict_put_str(args, "property", prop);
+ resp = qmp_cmd("qom-get", args);
+ ret = qdict_get(resp, "return");
qobject_incref(ret);
QDECREF(resp);
return ret;
As argued elsewhere, it's less code to maintain if we convert from a dynamic string passed to qobject_from_jsonv() to instead use hand-built QDict. Signed-off-by: Eric Blake <eblake@redhat.com> --- Optional; the "%s" handling in earlier patches is sufficient to handle this without hand-built QDict, so it is a judgment call which version is more legible. --- tests/test-x86-cpuid-compat.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)