aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJes Sorensen <Jes.Sorensen@redhat.com>2010-06-10 11:42:30 +0200
committerBlue Swirl <blauwirbel@gmail.com>2010-06-12 08:49:15 +0300
commit9156d76331f2d51ce5b17cc945dd97788fc64c5a (patch)
tree4e59a983072d9ad02956ffea0e68646a0e3599fa
parente06eb601b098d9bcb32eb1ce5e00920d638c6d51 (diff)
Move line-buffering setup to OS specific files.
Move line-buffering setup to OS specific files. Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Acked-by: Juan Quintela <quintela@redhat.com> Acked-by: Richard Henderson <rth@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
-rw-r--r--os-posix.c5
-rw-r--r--qemu-os-posix.h1
-rw-r--r--qemu-os-win32.h2
-rw-r--r--vl.c5
4 files changed, 9 insertions, 4 deletions
diff --git a/os-posix.c b/os-posix.c
index 3a96c91ca8..9bae8fe09e 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -298,3 +298,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 8be583da68..cb210ba008 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 39df333cf4..5a97d8d10a 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 cadd988fd2..ba23e063c6 100644
--- a/vl.c
+++ b/vl.c
@@ -3215,10 +3215,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");