mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
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>
This commit is contained in:
parent
cee32796ca
commit
d43b16945a
5 changed files with 32 additions and 34 deletions
|
@ -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));
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue