win32: Set unbuffered stdout
Win32 does not support line-buffering, but it allows unbuffered output. Unbuffered output is a good approximation. For typical output statements which usually end with '\n', it's even identical. Buffered output is unusable for program traces because of its large delay. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
ea95f15602
commit
6650b7100b
@ -221,6 +221,12 @@ char *os_find_datadir(const char *argv0)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void os_set_line_buffering(void)
|
||||||
|
{
|
||||||
|
setbuf(stdout, NULL);
|
||||||
|
setbuf(stderr, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Parse OS specific command line options.
|
* Parse OS specific command line options.
|
||||||
* return 0 if option handled, -1 otherwise
|
* return 0 if option handled, -1 otherwise
|
||||||
|
@ -45,8 +45,7 @@ void os_host_main_loop_wait(int *timeout);
|
|||||||
static inline void os_setup_signal_handling(void) {}
|
static inline void os_setup_signal_handling(void) {}
|
||||||
static inline void os_daemonize(void) {}
|
static inline void os_daemonize(void) {}
|
||||||
static inline void os_setup_post(void) {}
|
static inline void os_setup_post(void) {}
|
||||||
/* Win32 doesn't support line-buffering and requires size >= 2 */
|
void os_set_line_buffering(void);
|
||||||
static inline void os_set_line_buffering(void) {}
|
|
||||||
static inline void os_set_proc_name(const char *dummy) {}
|
static inline void os_set_proc_name(const char *dummy) {}
|
||||||
|
|
||||||
#if !defined(EPROTONOSUPPORT)
|
#if !defined(EPROTONOSUPPORT)
|
||||||
|
Loading…
Reference in New Issue
Block a user