aboutsummaryrefslogtreecommitdiff
path: root/qga
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2018-07-03 10:53:49 +0200
committerMarkus Armbruster <armbru@redhat.com>2018-07-03 23:18:56 +0200
commitd43b16945afa8457b03aee543a110c4ff0b7f070 (patch)
tree3639afe23f1067412e3eaa6baa2bf345ef2b5fc1 /qga
parentcee32796cadc9510ee00f029a933009df7a28ae2 (diff)
downloadqemu-d43b16945afa8457b03aee543a110c4ff0b7f070.zip
qemu-d43b16945afa8457b03aee543a110c4ff0b7f070.tar.gz
qemu-d43b16945afa8457b03aee543a110c4ff0b7f070.tar.bz2
qmp: Use QDict * instead of QObject * for response objects
By using the more specific type, we get fewer downcasts. The downcasts are safe, but not obviously so, at least not locally. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20180703085358.13941-24-armbru@redhat.com>
Diffstat (limited to 'qga')
-rw-r--r--qga/main.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/qga/main.c b/qga/main.c
index 0e30e30..537cc0e 100644
--- a/qga/main.c
+++ b/qga/main.c
@@ -545,7 +545,7 @@ fail:
#endif
}
-static int send_response(GAState *s, QObject *payload)
+static int send_response(GAState *s, QDict *payload)
{
const char *buf;
QString *payload_qstr, *response_qstr;
@@ -553,7 +553,7 @@ static int send_response(GAState *s, QObject *payload)
g_assert(payload && s->channel);
- payload_qstr = qobject_to_json(payload);
+ payload_qstr = qobject_to_json(QOBJECT(payload));
if (!payload_qstr) {
return -EINVAL;
}
@@ -581,7 +581,7 @@ static int send_response(GAState *s, QObject *payload)
static void process_command(GAState *s, QDict *req)
{
- QObject *rsp = NULL;
+ QDict *rsp;
int ret;
g_assert(req);
@@ -629,7 +629,7 @@ static void process_event(JSONMessageParser *parser, GQueue *tokens)
error_setg(&err, QERR_UNSUPPORTED);
qdict = qmp_error_response(err);
}
- ret = send_response(s, QOBJECT(qdict));
+ ret = send_response(s, qdict);
if (ret < 0) {
g_warning("error sending error response: %s", strerror(-ret));
}