Patchwork [04/20] monitor: Introduce monitor_find_command()

login
register
mail settings
Submitter Luiz Capitulino
Date Nov. 27, 2009, 12:58 a.m.
Message ID <1259283550-3597-5-git-send-email-lcapitulino@redhat.com>
Download mbox | patch
Permalink /patch/39595/
State New
Headers show

Comments

Luiz Capitulino - Nov. 27, 2009, 12:58 a.m.
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 <lcapitulino@redhat.com>
---
 monitor.c |   22 +++++++++++++++-------
 1 files changed, 15 insertions(+), 7 deletions(-)

Patch

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;
     }