QMP: Fix default response regression

Commit 030db6e89d dropped do_info() usage from QMP and introduced
qmp_call_query_cmd(). However, the new function doesn't emit QMP's
default OK response when the handler doesn't return data.

Fix that by also calling monitor_protocol_emitter() when
ret_data == NULL, so that the default response is emitted.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
Luiz Capitulino 2010-11-22 16:22:47 -02:00
parent 2c90fe2b71
commit c01e688531
1 changed files with 2 additions and 4 deletions

View File

@ -4464,10 +4464,8 @@ static void qmp_call_query_cmd(Monitor *mon, const mon_cmd_t *cmd)
}
} else {
cmd->mhandler.info_new(mon, &ret_data);
if (ret_data) {
monitor_protocol_emitter(mon, ret_data);
qobject_decref(ret_data);
}
monitor_protocol_emitter(mon, ret_data);
qobject_decref(ret_data);
}
}