Currently, the captured output (via `capture-output`) is segregated into separate GuestExecStatus fields (`out-data` and `err-data`). This means that downstream consumers have no way to reassemble the captured data back into the original stream.
This is relevant for chatty and semi-interactive (ie. read only) CLI tools. Such tools may deliberately interleave stdout and stderr for visual effect. If segregated, the output becomes harder to visually understand. This patchset adds support for merging stderr and stdout output streams via a new QAPI flag. Changes from v2: * Error out if `merge-output` on windows guests * Add FIXMEs for when glib is updated * Fix memory leaks in qemu-keymap Changes from v1: * Drop invalid test fix * Do not support `merge-output` on windows guests * Fix a UAF in tests Daniel Xu (4): crypto/luks: Initialize stack variable to silence warning qemu-keymap: Fix memory leaks qga: Add optional `merge-output` flag to guest-exec qapi qga: test: Add tests for `merge-output` flag crypto/block-luks.c | 2 +- qemu-keymap.c | 5 ++ qga/commands.c | 28 +++++++- qga/qapi-schema.json | 6 +- tests/unit/test-qga.c | 157 +++++++++++++++++++++++++++++++++++++----- 5 files changed, 177 insertions(+), 21 deletions(-) -- 2.39.1