qemucapsprobe: Ignore all greetings except the first one

When starting QEMU more than once during a single probing process,
qemucapsprobe utility would save QMP greeting several times, which
doesn't play well with our test monitor.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
Jiri Denemark 2016-11-14 14:29:57 +01:00
parent 429a7b231c
commit 73078906f3

View File

@ -77,10 +77,14 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon,
char *p;
bool skip = false;
if (first)
if (first) {
first = false;
else
} else {
/* Ignore QMP greeting if it's not the first one */
if (virJSONValueObjectHasKey(value, "QMP"))
goto cleanup;
putchar('\n');
}
for (p = json; *p; p++) {
if (skip && *p == '\n') {
@ -92,6 +96,7 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon,
}
}
cleanup:
VIR_FREE(json);
virJSONValueFree(value);
return ret;