It's going to be used by QMP code as well. Signed-off-by: Luiz Capitulino <lcapitul...@redhat.com> --- monitor.c | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/monitor.c b/monitor.c index a98dc42..07bd21c 100644 --- a/monitor.c +++ b/monitor.c @@ -3268,6 +3268,18 @@ static void monitor_print_error(Monitor *mon) mon->error = NULL; } +static void monitor_call_handler(Monitor *mon, const mon_cmd_t *cmd, + const QDict *params) +{ + QObject *data = NULL; + + cmd->mhandler.cmd_new(mon, params, &data); + if (data) + cmd->user_print(mon, data); + + qobject_decref(data); +} + static void monitor_handle_command(Monitor *mon, const char *cmdline) { QDict *qdict; @@ -3282,13 +3294,7 @@ static void monitor_handle_command(Monitor *mon, const char *cmdline) qemu_errors_to_mon(mon); if (monitor_handler_ported(cmd)) { - QObject *data = NULL; - - cmd->mhandler.cmd_new(mon, qdict, &data); - if (data) - cmd->user_print(mon, data); - - qobject_decref(data); + monitor_call_handler(mon, cmd, qdict); } else { cmd->mhandler.cmd(mon, qdict); } -- 1.6.5.3.148.g785c5