[PATCH 02/12] Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++
- From
Frank Li <lznuaa@gmail.com>
- Date
- Aug 19, 2009, 15:52 UTC
- Message-ID
- <1250697167-5536-2-git-send-email-lznuaa@gmail.com>
- In-Reply-To
- <1250697167-5536-1-git-send-email-lznuaa@gmail.com>
The Microsoft C runtime's vsnprintf function does not add NUL at the end of the buffer.
Further, Microsoft deprecated vsnprintf in favor of _vsnprintf, so add a #define to that end.
Signed-off-by: Frank Li <lznuaa@gmail.com> --- compat/snprintf.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/compat/snprintf.c b/compat/snprintf.c index 6c0fb05..47b2b8a 100644 --- a/compat/snprintf.c +++ b/compat/snprintf.c @@ -6,7 +6,7 @@ * number of characters to write without the trailing NUL. */ #ifndef SNPRINTF_SIZE_CORR -#if defined(__MINGW32__) && defined(__GNUC__) && __GNUC__ < 4 +#if defined(__MINGW32__) && defined(__GNUC__) && __GNUC__ < 4 || defined(_MSC_VER) #define SNPRINTF_SIZE_CORR 1 #else #define SNPRINTF_SIZE_CORR 0 @@ -14,6 +14,11 @@ #endif #undef vsnprintf + +#if defined(_MSC_VER) +#define vsnprintf _vsnprintf +#endif + int git_vsnprintf(char *str, size_t maxsize, const char *format, va_list ap) { char *s;
-- 1.6.4.msysgit.0