From: Jes Sorensen <jes.soren...@redhat.com> Move line-buffering setup to OS specific files.
Signed-off-by: Jes Sorensen <jes.soren...@redhat.com> --- os-posix.c | 5 +++++ qemu-os-posix.h | 1 + qemu-os-win32.h | 2 ++ vl.c | 5 +---- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/os-posix.c b/os-posix.c index 7ac6f07..7530276 100644 --- a/os-posix.c +++ b/os-posix.c @@ -313,3 +313,8 @@ void os_pidfile_error(void) } else fprintf(stderr, "Could not acquire pid file: %s\n", strerror(errno)); } + +void os_set_line_buffering(void) +{ + setvbuf(stdout, NULL, _IOLBF, 0); +} diff --git a/qemu-os-posix.h b/qemu-os-posix.h index 8be583d..cb210ba 100644 --- a/qemu-os-posix.h +++ b/qemu-os-posix.h @@ -30,6 +30,7 @@ static inline void os_host_main_loop_wait(int *timeout) { } +void os_set_line_buffering(void); void os_setup_signal_handling(void); void os_daemonize(void); void os_setup_post(void); diff --git a/qemu-os-win32.h b/qemu-os-win32.h index facd3d6..1709cf6 100644 --- a/qemu-os-win32.h +++ b/qemu-os-win32.h @@ -45,5 +45,7 @@ void os_host_main_loop_wait(int *timeout); static inline void os_setup_signal_handling(void) {}; static inline void os_daemonize(void) {}; static inline void os_setup_post(void) {}; +/* Win32 doesn't support line-buffering and requires size >= 2 */ +static inline void os_set_line_buffering(void) {}; #endif diff --git a/vl.c b/vl.c index bb8abbf..3dbc789 100644 --- a/vl.c +++ b/vl.c @@ -3216,10 +3216,7 @@ int main(int argc, char **argv, char **envp) exit(1); } -#ifndef _WIN32 - /* Win32 doesn't support line-buffering and requires size >= 2 */ - setvbuf(stdout, NULL, _IOLBF, 0); -#endif + os_set_line_buffering(); if (init_timer_alarm() < 0) { fprintf(stderr, "could not initialize alarm timer\n"); -- 1.6.5.2