vl: make sure char-pty message displayed by moving setbuf to the beginning

Recently we found a behavior change after commit 6ade45f2ac
('char-pty: Print "char device redirected" message to stdout').

When we redirect output to a file, the message "char device redirected
to PTY_NAME (label LABEL)" would not be seen at the beginning of the
file. Instead, the message is displayed after QEMU quit. This will block
test automation.

The reason is this message is printed after we set line buffer mode. So
move this to the beginning.

Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Wei Yang 2019-07-16 15:21:27 +08:00 committed by Paolo Bonzini
parent 3cae16db02
commit 45d8bc3ade
1 changed files with 2 additions and 2 deletions

4
vl.c
View File

@ -2890,6 +2890,8 @@ int main(int argc, char **argv, char **envp)
char *dir, **dirs;
BlockdevOptionsQueue bdo_queue = QSIMPLEQ_HEAD_INITIALIZER(bdo_queue);
os_set_line_buffering();
error_init(argv[0]);
module_call_init(MODULE_INIT_TRACE);
@ -4246,8 +4248,6 @@ int main(int argc, char **argv, char **envp)
semihosting_arg_fallback(kernel_filename, kernel_cmdline);
}
os_set_line_buffering();
/* spice needs the timers to be initialized by this point */
qemu_spice_init();