From: José Fonseca Date: Tue, 1 Feb 2011 10:41:46 +0000 (+0000) Subject: glsl: Fix printf_length() on MSVC. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3c701f1d61b33a5ffaddd4199ac277da8e287f30;p=mesa.git glsl: Fix printf_length() on MSVC. --- diff --git a/src/glsl/ralloc.c b/src/glsl/ralloc.c index fa2dd8b01e6..3ba5d86cd9c 100644 --- a/src/glsl/ralloc.c +++ b/src/glsl/ralloc.c @@ -392,7 +392,15 @@ printf_length(const char *fmt, va_list untouched_args) va_list args; va_copy(args, untouched_args); +#ifdef _MSC_VER + /* We need to use _vcsprintf to calculate the size as vsnprintf returns -1 + * if the number of characters to write is greater than count. + */ + size = _vscprintf(fmt, args); + (void)junk; +#else size = vsnprintf(&junk, 1, fmt, args); +#endif assert(size >= 0); return size;