#include "precompiled.h" #include #include // See declaration in sysdep.h for explanation of need int sys_vsnprintf(char* buffer, size_t count, const char* format, va_list argptr) { int ret = vsnprintf(buffer, count, format, argptr); /* "The glibc implementation of the functions snprintf() and vsnprintf() conforms to the C99 standard ... since glibc version 2.1. Until glibc 2.0.6 they would return -1 when the output was truncated." - man printf MSVC's _vsnprintf still returns -1, so we want this one to do the same (for compatibility), if the output (including the terminating null) is truncated. */ if (ret >= (int)count) return -1; return ret; }