Greg Kurz <[email protected]> writes: > 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 <[email protected]> > --- > scripts/qmp/qom-set | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/qmp/qom-set b/scripts/qmp/qom-set > index 54ecfecc531e..94e27789224c 100755 > --- a/scripts/qmp/qom-set > +++ b/scripts/qmp/qom-set > @@ -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)
Given Python modules like argparse, doing option parsing by hand is basically stupid. This patch fixes it without making it any stupider. Sold. Reviewed-by: Markus Armbruster <[email protected]>
