diff mbox

[16/29] monitor: Port handler_7 to use QDict

Message ID 1250171428-29308-17-git-send-email-lcapitulino@redhat.com
State Superseded
Headers show

Commit Message

Luiz Capitulino Aug. 13, 2009, 1:50 p.m. UTC
This commit ports command handlers that receive seven arguments to
use the new monitor's dictionary.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
---
 monitor.c |   31 +++++++++++++++++++------------
 1 files changed, 19 insertions(+), 12 deletions(-)
diff mbox

Patch

diff --git a/monitor.c b/monitor.c
index 88536c4..23fe386 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1573,13 +1573,26 @@  static void do_stop_capture(Monitor *mon, const QDict *qdict)
     }
 }
 
-static void do_wav_capture(Monitor *mon, const char *path,
-                           int has_freq, int freq,
-                           int has_bits, int bits,
-                           int has_channels, int nchannels)
-{
+static void do_wav_capture(Monitor *mon, const QDict *qdict)
+{
+    const char *path = qdict_get_str(qdict, "path");
+    int has_freq = qdict_exists(qdict, "freq");
+    int freq = -1;
+    int has_bits = qdict_exists(qdict, "bits");
+    int bits = -1;
+    int has_channels = qdict_exists(qdict, "nchannels");
+    int nchannels = -1;
     CaptureState *s;
 
+    if (has_freq)
+        freq = qdict_get_int(qdict, "freq");
+
+    if (has_bits)
+        bits = qdict_get_int(qdict, "bits");
+
+    if (has_channels)
+        nchannels = qdict_get_int(qdict, "nchannels");
+
     s = qemu_mallocz (sizeof (*s));
 
     freq = has_freq ? freq : 44100;
@@ -2653,8 +2666,6 @@  static void monitor_handle_command(Monitor *mon, const char *cmdline)
     void *str_allocated[MAX_ARGS];
     void *args[MAX_ARGS];
     void (*handler_d)(Monitor *mon, const QDict *qdict);
-    void (*handler_7)(Monitor *mon, void *arg0, void *arg1, void *arg2,
-                      void *arg3, void *arg4, void *arg5, void *arg6);
     void (*handler_8)(Monitor *mon, void *arg0, void *arg1, void *arg2,
                       void *arg3, void *arg4, void *arg5, void *arg6,
                       void *arg7);
@@ -2942,14 +2953,10 @@  static void monitor_handle_command(Monitor *mon, const char *cmdline)
     case 4:
     case 5:
     case 6:
+    case 7:
         handler_d = cmd->handler;
         handler_d(mon, qdict);
         break;
-    case 7:
-        handler_7 = cmd->handler;
-        handler_7(mon, args[0], args[1], args[2], args[3], args[4], args[5],
-                  args[6]);
-        break;
     case 8:
         handler_8 = cmd->handler;
         handler_8(mon, args[0], args[1], args[2], args[3], args[4], args[5],