OSDN Git Service

libqtest: escape strings in QMP commands, fix leak
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 13 Jun 2014 07:35:18 +0000 (09:35 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 1 Jul 2014 08:20:41 +0000 (10:20 +0200)
commit563890c7c7e977842e2a35afe7a24d06d2103242
tree284a26ca2bcd81b2e0abada9e9838c2be325086c
parent8ffad850ef5ae14287d0e185d478c9a35820482c
libqtest: escape strings in QMP commands, fix leak

libqtest is using g_strdup_printf to format QMP commands, but
this does not work if the argument strings need to be escaped.
Instead, use the fancy %-formatting functionality of QObject.
The only change required in tests is that strings have to be
formatted as %s, not '%s' or \"%s\".  Luckily this usage of
parameterized QMP commands is not that frequent.

The leak is in socket_sendf.  Since we are extracting the send
loop to a new function, fix it now.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
tests/fdc-test.c
tests/libqtest.c
tests/qom-test.c
tests/tmp105-test.c