提交 0ed27165 编写于 作者: P Peter Krempa

tests: qemucapsprobemock: Simplify and extract skipping of empty lines

The prettyfied output may sometimes contain empty lines which would
desynchonize the test monitor workers. The skipping code can be much
simplified though. Also a extract it so so that it's obvious what
it's doing and can be reused.
Signed-off-by: NPeter Krempa <pkrempa@redhat.com>
Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
上级 1025264e
......@@ -38,6 +38,21 @@
} while (0)
static void
printLineSkipEmpty(const char *line,
FILE *fp)
{
const char *p;
for (p = line; *p; p++) {
if (p[0] == '\n' && p[1] == '\n')
continue;
fputc(*p, fp);
}
}
static int (*realQemuMonitorSend)(qemuMonitorPtr mon,
qemuMonitorMessagePtr msg);
......@@ -74,8 +89,6 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon,
if (ret == 0 &&
(value = virJSONValueFromString(line)) &&
(json = virJSONValueToString(value, 1))) {
char *p;
bool skip = false;
if (first) {
first = false;
......@@ -86,14 +99,7 @@ qemuMonitorJSONIOProcessLine(qemuMonitorPtr mon,
putchar('\n');
}
for (p = json; *p; p++) {
if (skip && *p == '\n') {
continue;
} else {
skip = *p == '\n';
putchar(*p);
}
}
printLineSkipEmpty(json, stdout);
}
cleanup:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册