scripts/qmp/qom-set: fix the value argument passed to srv.command()
authorGreg Kurz <groug@kaod.org>
Tue, 2 May 2017 14:41:43 +0000 (16:41 +0200)
committerMarkus Armbruster <armbru@redhat.com>
Tue, 23 May 2017 11:28:17 +0000 (13:28 +0200)
When invoking the script with -s, we end up passing a bogus value
to QEMU:

$ ./scripts/qmp/qom-set -s /var/tmp/qmp-sock-exp /machine.accel kvm
{}
$ ./scripts/qmp/qom-get -s /var/tmp/qmp-sock-exp /machine.accel
/var/tmp/qmp-sock-exp

This happens because sys.argv[2] isn't necessarily the command line
argument that holds the value. It is sys.argv[4] when -s was also
passed.

Actually, the code already has a variable to handle that. This patch
simply uses it.

Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <149373610338.5144.9635049015143453288.stgit@bahia.lan>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
scripts/qmp/qom-set

index 54ecfecc531ea042665e6e44984dddcacba33b8f..94e27789224c5dc6d8d3ae9201a225d19f1eec0b 100755 (executable)
@@ -61,4 +61,4 @@ else:
 srv = QEMUMonitorProtocol(socket_path)
 srv.connect()
 
-print srv.command('qom-set', path=path, property=prop, value=sys.argv[2])
+print srv.command('qom-set', path=path, property=prop, value=value)