From bf65f53fbaaca39600017247108b0627033f2fb1 Mon Sep 17 00:00:00 2001 From: Filip Navara Date: Mon, 27 Jul 2009 10:02:04 -0500 Subject: [PATCH] Remove setvbuf(, NULL, _IOLBF, 0) calls for Win32 On Win32 the setvbuf function requires the last parameter to be size between 2 and INT_MAX bytes, so the calls always failed. Since the whole point of the calls is to set line-buffered mode for the file handle and that's not supported on Win32 anyway, conditionally remove them. Signed-off-by: Filip Navara Signed-off-by: Anthony Liguori --- exec.c | 3 ++- vl.c | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/exec.c b/exec.c index 7d3eb1adab..ef79d6d29e 100644 --- a/exec.c +++ b/exec.c @@ -1491,7 +1491,8 @@ void cpu_set_log(int log_flags) static char logfile_buf[4096]; setvbuf(logfile, logfile_buf, _IOLBF, sizeof(logfile_buf)); } -#else +#elif !defined(_WIN32) + /* Win32 doesn't support line-buffering and requires size >= 2 */ setvbuf(logfile, NULL, _IOLBF, 0); #endif log_append = 1; diff --git a/vl.c b/vl.c index bdf2fe8f12..198523e319 100644 --- a/vl.c +++ b/vl.c @@ -5755,7 +5755,10 @@ 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 init_timers(); if (init_timer_alarm() < 0) {