From b4724180a64b2c0474692e32c9ac96261a16238b Mon Sep 17 00:00:00 2001 From: Nguyễn Thái Ngọc Duy Date: Mon, 5 Apr 2010 22:26:14 +0200 Subject: win32: xasprintf fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nguyễn Thái Ngọc Duy --- libbb/xfuncs_printf.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/libbb/xfuncs_printf.c b/libbb/xfuncs_printf.c index 7207ec58a..f8b1b81cd 100644 --- a/libbb/xfuncs_printf.c +++ b/libbb/xfuncs_printf.c @@ -287,8 +287,22 @@ char* FAST_FUNC xasprintf(const char *format, ...) char *string_ptr; va_start(p, format); +#if ENABLE_PLATFORM_MINGW32 + string_ptr = xmalloc(1024); + r = vsnprintf(string_ptr, 1024, format, p); + va_end(p); + if (r > 0) { + free(string_ptr); + r += 2; + string_ptr = xmalloc(r); + va_start(p, format); + r = vsnprintf(string_ptr, r, format, p); + va_end(p); + } +#else r = vasprintf(&string_ptr, format, p); va_end(p); +#endif if (r < 0) bb_error_msg_and_die(bb_msg_memory_exhausted); -- cgit v1.2.3-55-g6feb