diff --git a/lib/curl_setup.h b/lib/curl_setup.h index b7c030c006..4629f79fb9 100644 --- a/lib/curl_setup.h +++ b/lib/curl_setup.h @@ -90,7 +90,7 @@ /* Disable Visual Studio warnings: 4127 "conditional expression is constant" */ #pragma warning(disable:4127) #ifndef _CRT_SECURE_NO_WARNINGS -#define _CRT_SECURE_NO_WARNINGS /* for getenv(), tests: sscanf() */ +#define _CRT_SECURE_NO_WARNINGS /* for _snprintf(), getenv(), sscanf() */ #endif #endif /* _MSC_VER */ diff --git a/lib/mprintf.c b/lib/mprintf.c index 10cede837c..b00f16e34b 100644 --- a/lib/mprintf.c +++ b/lib/mprintf.c @@ -688,6 +688,9 @@ static bool out_double(void *userp, buffer if it reaches the max size so we do that here. */ work[BUFFSIZE - 1] = 0; #endif +#elif defined(_MSC_VER) && (_MSC_VER < 1900) + _snprintf(work, BUFFSIZE, formatbuf, dnum); + work[BUFFSIZE - 1] = 0; #else /* float and double outputs do not work without snprintf support */ work[0] = 0;