This commit moves the loop which searches for the command entry corresponding to a command name to its own function.
It will be used by QMP code as well. Signed-off-by: Luiz Capitulino <lcapitul...@redhat.com> --- monitor.c | 22 +++++++++++++++------- 1 files changed, 15 insertions(+), 7 deletions(-) diff --git a/monitor.c b/monitor.c index e0cc941..6c2c1f1 100644 --- a/monitor.c +++ b/monitor.c @@ -3017,6 +3017,19 @@ static int is_valid_option(const char *c, const char *typestr) return (typestr != NULL); } +static const mon_cmd_t *monitor_find_command(const char *cmdname) +{ + const mon_cmd_t *cmd; + + for (cmd = mon_cmds; cmd->name != NULL; cmd++) { + if (compare_cmd(cmdname, cmd->name)) { + return cmd; + } + } + + return NULL; +} + static const mon_cmd_t *monitor_parse_command(Monitor *mon, const char *cmdline, QDict *qdict) @@ -3037,13 +3050,8 @@ static const mon_cmd_t *monitor_parse_command(Monitor *mon, if (!p) return NULL; - /* find the command */ - for(cmd = mon_cmds; cmd->name != NULL; cmd++) { - if (compare_cmd(cmdname, cmd->name)) - break; - } - - if (cmd->name == NULL) { + cmd = monitor_find_command(cmdname); + if (!cmd) { monitor_printf(mon, "unknown command: '%s'\n", cmdname); return NULL; } -- 1.6.6.rc0.50.gaf06e