Merge pull request #110 from Arkshine/replace-more-snprintf

Replace more snprintf by UTIL_Format.
This commit is contained in:
Vincent Herbet
2014-08-08 20:38:38 +02:00
63 changed files with 438 additions and 79 deletions

View File

@ -21,8 +21,7 @@ int g_CameraCount;
TraceResult g_tr;
#define BUFFERSIZE 1023
char g_buffer[BUFFERSIZE + 1];
char g_buffer[1024];
void UTIL_SetSize(edict_t *pev, const Vector &vecMin, const Vector &vecMax)
{
@ -870,7 +869,7 @@ static cell AMX_NATIVE_CALL traceresult(AMX *amx, cell *params)
// (jghg)
static cell AMX_NATIVE_CALL get_string(AMX *amx, cell *params) // (string, returnstring[], length)
{
snprintf(g_buffer, BUFFERSIZE, "%s", STRING(params[1]));
UTIL_Format(g_buffer, sizeof(g_buffer)-1, "%s", STRING(params[1]));
return MF_SetAmxString(amx, params[2], g_buffer, params[3]);
}

View File

@ -3124,3 +3124,21 @@ unsigned short FixedUnsigned16( float value, float scale )
return (unsigned short)output;
}
#endif // USE_METAMOD
size_t UTIL_Format(char *buffer, size_t maxlength, const char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
size_t len = vsnprintf(buffer, maxlength, fmt, ap);
va_end(ap);
if (len >= maxlength)
{
buffer[maxlength - 1] = '\0';
return (maxlength - 1);
}
else
{
return len;
}
}

View File

@ -2495,4 +2495,6 @@ void Mem_Deallocator(const char *sourceFile, const unsigned int sourceLine, cons
#endif //MEMORY_TEST
size_t UTIL_Format(char *buffer, size_t maxlength, const char *fmt, ...);
#endif // #ifndef __AMXXMODULE_H__