- tag more functions with gnu format attribute

- fix format string bugs. still some left
This commit is contained in:
Ludwig Nussel 2006-12-30 12:32:54 +00:00
parent c3a713832c
commit 8e82c3d605
17 changed files with 32 additions and 34 deletions

View file

@ -1448,7 +1448,7 @@ void CG_LoadMenus(const char *menuFile) {
trap_Error( va( S_COLOR_YELLOW "menu file not found: %s, using default\n", menuFile ) );
len = trap_FS_FOpenFile( "ui/hud.txt", &f, FS_READ );
if (!f) {
trap_Error( va( S_COLOR_RED "default menu file not found: ui/hud.txt, unable to continue!\n", menuFile ) );
trap_Error( va( S_COLOR_RED "default menu file not found: ui/hud.txt, unable to continue!\n") );
}
}

View file

@ -415,10 +415,10 @@ The cgame module is making a system call
intptr_t CL_CgameSystemCalls( intptr_t *args ) {
switch( args[0] ) {
case CG_PRINT:
Com_Printf( "%s", VMA(1) );
Com_Printf( "%s", (const char*)VMA(1) );
return 0;
case CG_ERROR:
Com_Error( ERR_DROP, "%s", VMA(1) );
Com_Error( ERR_DROP, "%s", (const char*)VMA(1) );
return 0;
case CG_MILLISECONDS:
return Sys_Milliseconds();

View file

@ -105,7 +105,7 @@ static void *GPA(char *str)
}
else
{
Com_DPrintf("Loaded symbol %s (0x%08X)\n", str, rv);
Com_DPrintf("Loaded symbol %s (0x%p)\n", str, rv);
return rv;
}
}
@ -347,7 +347,7 @@ void CL_cURL_PerformDownload(void)
qcurl_easy_getinfo(msg->easy_handle, CURLINFO_RESPONSE_CODE,
&code);
Com_Error(ERR_DROP, "Download Error: %s Code: %d URL: %s",
Com_Error(ERR_DROP, "Download Error: %s Code: %ld URL: %s",
qcurl_easy_strerror(msg->data.result),
code, clc.downloadURL);
}

View file

@ -993,7 +993,7 @@ void CL_Setenv_f( void ) {
if ( env ) {
Com_Printf( "%s=%s\n", Cmd_Argv(1), env );
} else {
Com_Printf( "%s undefined\n", Cmd_Argv(1), env );
Com_Printf( "%s undefined\n", Cmd_Argv(1));
}
}
}

View file

@ -767,11 +767,11 @@ The ui module is making a system call
intptr_t CL_UISystemCalls( intptr_t *args ) {
switch( args[0] ) {
case UI_ERROR:
Com_Error( ERR_DROP, "%s", VMA(1) );
Com_Error( ERR_DROP, "%s", (const char*)VMA(1) );
return 0;
case UI_PRINT:
Com_Printf( "%s", VMA(1) );
Com_Printf( "%s", (const char*)VMA(1) );
return 0;
case UI_MILLISECONDS:

View file

@ -896,7 +896,7 @@ static qboolean S_AL_CheckInput(int entityNum, sfxHandle_t sfx)
if (sfx < 0 || sfx >= numSfx)
{
Com_Printf(S_COLOR_RED, "ERROR: S_AL_CheckInput: handle %i out of range\n", sfx);
Com_Printf(S_COLOR_RED "ERROR: S_AL_CheckInput: handle %i out of range\n", sfx);
return qtrue;
}

View file

@ -76,7 +76,7 @@ int atoi( const char *string );
int _atoi( const char **stringPtr );
int vsprintf( char *buffer, const char *fmt, va_list argptr );
int sscanf( const char *buffer, const char *fmt, ... );
int sscanf( const char *buffer, const char *fmt, ... ) __attribute__ ((format (scanf, 2, 3)));
// Memory functions
void *memmove( void *dest, const void *src, size_t count );

View file

@ -54,7 +54,7 @@ void G_WriteClientSessionData( gclient_t *client ) {
client->sess.teamLeader
);
var = va( "session%i", client - level.clients );
var = va( "session%i", (int)(client - level.clients) );
trap_Cvar_Set( var, s );
}
@ -75,7 +75,7 @@ void G_ReadSessionData( gclient_t *client ) {
int spectatorState;
int sessionTeam;
var = va( "session%i", client - level.clients );
var = va( "session%i", (int)(client - level.clients) );
trap_Cvar_VariableStringBuffer( var, s, sizeof(s) );
sscanf( s, "%i %i %i %i %i %i %i",

View file

@ -913,10 +913,9 @@ void Cvar_Update( vmCvar_t *vmCvar ) {
vmCvar->modificationCount = cv->modificationCount;
// bk001129 - mismatches.
if ( strlen(cv->string)+1 > MAX_CVAR_VALUE_STRING )
Com_Error( ERR_DROP, "Cvar_Update: src %s length %d exceeds MAX_CVAR_VALUE_STRING",
Com_Error( ERR_DROP, "Cvar_Update: src %s length %zd exceeds MAX_CVAR_VALUE_STRING",
cv->string,
strlen(cv->string),
sizeof(vmCvar->string) );
strlen(cv->string));
// bk001212 - Q_strncpyz guarantees zero padding and dest[MAX_CVAR_VALUE_STRING-1]==0
// bk001129 - paranoia. Never trust the destination string.
// bk001129 - beware, sizeof(char*) is always 4 (for cv->string).

View file

@ -397,8 +397,7 @@ qboolean Netchan_Process( netchan_t *chan, msg_t *msg ) {
if ( fragmentStart != chan->fragmentLength ) {
if ( showdrop->integer || showpackets->integer ) {
Com_Printf( "%s:Dropped a message fragment\n"
, NET_AdrToString( chan->remoteAddress )
, sequence);
, NET_AdrToString( chan->remoteAddress ));
}
// we can still keep the part that we have so far,
// so we don't need to clear chan->fragmentLength

View file

@ -599,8 +599,8 @@ int COM_GetCurrentParseLine( void );
char *COM_Parse( char **data_p );
char *COM_ParseExt( char **data_p, qboolean allowLineBreak );
int COM_Compress( char *data_p );
void COM_ParseError( char *format, ... );
void COM_ParseWarning( char *format, ... );
void COM_ParseError( char *format, ... ) __attribute__ ((format (printf, 1, 2)));
void COM_ParseWarning( char *format, ... ) __attribute__ ((format (printf, 1, 2)));
//int COM_ParseInfos( char *buf, int max, char infos[][MAX_INFO_STRING] );
#define MAX_TOKENLENGTH 1024
@ -634,7 +634,7 @@ void Parse1DMatrix (char **buf_p, int x, float *m);
void Parse2DMatrix (char **buf_p, int y, int x, float *m);
void Parse3DMatrix (char **buf_p, int z, int y, int x, float *m);
void QDECL Com_sprintf (char *dest, int size, const char *fmt, ...);
void QDECL Com_sprintf (char *dest, int size, const char *fmt, ...) __attribute__ ((format (printf, 3, 4)));
char *Com_SkipTokens( char *s, int numTokens, char *sep );
char *Com_SkipCharset( char *s, char *sep );
@ -706,7 +706,7 @@ float LittleFloat (const float *l);
void Swap_Init (void);
*/
char * QDECL va(char *format, ...);
char * QDECL va(char *format, ...) __attribute__ ((format (printf, 1, 2)));;
#define TRUNCATE_LENGTH 64
void Com_TruncateLongString( char *buffer, const char *s );
@ -725,8 +725,8 @@ qboolean Info_Validate( const char *s );
void Info_NextPair( const char **s, char *key, char *value );
// this is only here so the functions in q_shared.c and bg_*.c can link
void QDECL Com_Error( int level, const char *error, ... );
void QDECL Com_Printf( const char *msg, ... );
void QDECL Com_Error( int level, const char *error, ... ) __attribute__ ((format (printf, 2, 3)));
void QDECL Com_Printf( const char *msg, ... ) __attribute__ ((format (printf, 1, 2)));
/*

View file

@ -161,7 +161,7 @@ void NET_Restart( void );
void NET_Config( qboolean enableNetworking );
void NET_FlushPacketQueue(void);
void NET_SendPacket (netsrc_t sock, int length, const void *data, netadr_t to);
void QDECL NET_OutOfBandPrint( netsrc_t net_socket, netadr_t adr, const char *format, ...);
void QDECL NET_OutOfBandPrint( netsrc_t net_socket, netadr_t adr, const char *format, ...) __attribute__ ((format (printf, 3, 4)));
void QDECL NET_OutOfBandData( netsrc_t sock, netadr_t adr, byte *format, int len );
qboolean NET_CompareAdr (netadr_t a, netadr_t b);
@ -725,9 +725,9 @@ void Info_Print( const char *s );
void Com_BeginRedirect (char *buffer, int buffersize, void (*flush)(char *));
void Com_EndRedirect( void );
void QDECL Com_Printf( const char *fmt, ... );
void QDECL Com_DPrintf( const char *fmt, ... );
void QDECL Com_Error( int code, const char *fmt, ... );
void QDECL Com_Printf( const char *fmt, ... ) __attribute__ ((format (printf, 1, 2)));
void QDECL Com_DPrintf( const char *fmt, ... ) __attribute__ ((format (printf, 1, 2)));
void QDECL Com_Error( int code, const char *fmt, ... ) __attribute__ ((format (printf, 2, 3)));
void Com_Quit_f( void );
int Com_EventLoop( void );
int Com_Milliseconds( void ); // will be journaled properly
@ -989,7 +989,7 @@ void *Sys_GetBotLibAPI( void *parms );
char *Sys_GetCurrentUser( void );
void QDECL Sys_Error( const char *error, ...);
void QDECL Sys_Error( const char *error, ...) __attribute__ ((format (printf, 1, 2)));
void Sys_Quit (void);
char *Sys_GetClipboardData( void ); // note that this isn't journaled...

View file

@ -726,7 +726,7 @@ intptr_t QDECL VM_Call( vm_t *vm, int callnum, ... ) {
lastVM = vm;
if ( vm_debugLevel ) {
Com_Printf( "VM_Call( %ld )\n", callnum );
Com_Printf( "VM_Call( %d )\n", callnum );
}
// if we have a dll loaded, call it directly

View file

@ -1433,7 +1433,7 @@ static void SV_UserMove( client_t *cl, msg_t *msg, qboolean delta ) {
if (cl->state == CS_ACTIVE)
{
// we didn't get a cp yet, don't assume anything and just send the gamestate all over again
Com_DPrintf( "%s: didn't get cp command, resending gamestate\n", cl->name, cl->state );
Com_DPrintf( "%s: didn't get cp command, resending gamestate\n", cl->name);
SV_SendClientGameState( cl );
}
return;

View file

@ -308,10 +308,10 @@ The module is making a system call
intptr_t SV_GameSystemCalls( intptr_t *args ) {
switch( args[0] ) {
case G_PRINT:
Com_Printf( "%s", VMA(1) );
Com_Printf( "%s", (const char*)VMA(1) );
return 0;
case G_ERROR:
Com_Error( ERR_DROP, "%s", VMA(1) );
Com_Error( ERR_DROP, "%s", (const char*)VMA(1) );
return 0;
case G_MILLISECONDS:
return Sys_Milliseconds();

View file

@ -946,7 +946,7 @@ void UI_LoadMenus(const char *menuFile, qboolean reset) {
trap_Error( va( S_COLOR_YELLOW "menu file not found: %s, using default\n", menuFile ) );
handle = trap_PC_LoadSource( "ui/menus.txt" );
if (!handle) {
trap_Error( va( S_COLOR_RED "default menu file not found: ui/menus.txt, unable to continue!\n", menuFile ) );
trap_Error( va( S_COLOR_RED "default menu file not found: ui/menus.txt, unable to continue!\n") );
}
}

View file

@ -186,7 +186,7 @@ static void print_audiospec(const char *str, const SDL_AudioSpec *spec)
if( fmt ) {
Com_Printf( " Format: %s\n", fmt );
} else {
Com_Printf( " Format: " S_COLOR_RED "UNKNOWN\n", fmt );
Com_Printf( " Format: " S_COLOR_RED "UNKNOWN\n");
}
Com_Printf( " Freq: %d\n", (int) spec->freq );