From c9d700f3a93db02035d0a3b28b660a1299b4658a Mon Sep 17 00:00:00 2001 From: Ron Yorston Date: Thu, 20 Mar 2014 15:36:27 +0000 Subject: Implement vprintf replacement --- include/mingw.h | 2 ++ win32/winansi.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/include/mingw.h b/include/mingw.h index c737441a6..b1a28b473 100644 --- a/include/mingw.h +++ b/include/mingw.h @@ -144,6 +144,7 @@ int winansi_putchar(int c); int winansi_puts(const char *s); size_t winansi_fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream); int winansi_fputs(const char *str, FILE *stream); +int winansi_vfprintf(FILE *stream, const char *format, va_list list); int winansi_printf(const char *format, ...) __attribute__((format (printf, 1, 2))); int winansi_fprintf(FILE *stream, const char *format, ...) __attribute__((format (printf, 2, 3))); int winansi_write(int fd, const void *buf, size_t count); @@ -153,6 +154,7 @@ int winansi_getc(FILE *stream); #define puts winansi_puts #define fwrite winansi_fwrite #define fputs winansi_fputs +#define vprintf(...) winansi_vfprintf(stdout, __VA_ARGS__) #define printf(...) winansi_printf(__VA_ARGS__) #define fprintf(...) winansi_fprintf(__VA_ARGS__) #define write winansi_write diff --git a/win32/winansi.c b/win32/winansi.c index e2b18b274..d929bcc66 100644 --- a/win32/winansi.c +++ b/win32/winansi.c @@ -9,6 +9,7 @@ /* Functions to be wrapped: */ +#undef vprintf #undef printf #undef fprintf #undef fputs @@ -466,7 +467,7 @@ int winansi_fputs(const char *str, FILE *stream) return EOF; } -static int winansi_vfprintf(FILE *stream, const char *format, va_list list) +int winansi_vfprintf(FILE *stream, const char *format, va_list list) { int len, rv; char small_buf[256]; -- cgit v1.2.3-55-g6feb