gallium: Use the custom snprintf implementation everywhere (for Win32).

Because winddk's implemenation does not handle floats.
This commit is contained in:
José Fonseca
2008-04-02 10:21:24 +09:00
parent bc029247d9
commit c1d26d3dcc
2 changed files with 12 additions and 8 deletions

View File

@@ -43,18 +43,13 @@
#ifdef WIN32
static INLINE void
rpl_EngDebugPrint(const char *format, ...)
_EngDebugPrint(const char *format, ...)
{
va_list ap;
va_start(ap, format);
EngDebugPrint("", (PCHAR)format, ap);
va_end(ap);
}
int rpl_vsnprintf(char *, size_t, const char *, va_list);
int rpl_snprintf(char *str, size_t size, const char *format, ...);
#define vsnprintf rpl_vsnprintf
#define snprintf rpl_snprintf
#endif
@@ -65,8 +60,8 @@ void _debug_vprintf(const char *format, va_list ap)
/* EngDebugPrint does not handle float point arguments, so we need to use
* our own vsnprintf implementation */
char buf[512 + 1];
rpl_vsnprintf(buf, sizeof(buf), format, ap);
rpl_EngDebugPrint("%s", buf);
vsnprintf(buf, sizeof(buf), format, ap);
_EngDebugPrint("%s", buf);
#else
/* TODO: Implement debug print for WINCE */
#endif

View File

@@ -32,6 +32,7 @@
#include "p_debug.h"
#include "p_pointer.h"
#include <math.h>
#include <stdarg.h>
#ifdef __cplusplus
@@ -137,6 +138,14 @@ REALLOC( void *old_ptr, unsigned old_size, unsigned new_size )
#define GETENV( X ) debug_get_option( X, NULL )
#ifdef WIN32
int rpl_vsnprintf(char *, size_t, const char *, va_list);
int rpl_snprintf(char *str, size_t size, const char *format, ...);
#define vsnprintf rpl_vsnprintf
#define snprintf rpl_snprintf
#endif
/**
* Return memory on given byte alignment
*/