mirror of
https://github.com/YGGverse/xash3d-fwgs.git
synced 2025-01-10 15:17:52 +00:00
engine: server: simplified strings operations.
This commit is contained in:
parent
7f98998765
commit
1332381e2d
@ -935,7 +935,7 @@ Rcon_Validate
|
||||
*/
|
||||
qboolean Rcon_Validate( void )
|
||||
{
|
||||
if( !Q_strlen( rcon_password.string ))
|
||||
if( !COM_CheckString( rcon_password.string ))
|
||||
return false;
|
||||
if( Q_strcmp( Cmd_Argv( 1 ), rcon_password.string ))
|
||||
return false;
|
||||
@ -1289,7 +1289,7 @@ void SV_PutClientInServer( sv_client_t *cl )
|
||||
svgame.dllFuncs.pfnParmsChangeLevel();
|
||||
|
||||
MSG_BeginServerCmd( &msg, svc_restore );
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL2", DEFAULT_SAVE_DIRECTORY, sv.name );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL2", sv.name );
|
||||
COM_FixSlashes( name );
|
||||
MSG_WriteString( &msg, name );
|
||||
MSG_WriteByte( &msg, levelData.connectionCount );
|
||||
@ -1560,9 +1560,9 @@ static qboolean SV_New_f( sv_client_t *cl )
|
||||
if(( cl->state == cs_spawned ) && cl->edict )
|
||||
svgame.dllFuncs.pfnClientDisconnect( cl->edict );
|
||||
|
||||
Q_snprintf( szName, sizeof( szName ), "%s", cl->name );
|
||||
Q_snprintf( szAddress, sizeof( szAddress ), "%s", NET_AdrToString( cl->netchan.remote_address ));
|
||||
Q_snprintf( szRejectReason, sizeof( szRejectReason ), "Connection rejected by game\n");
|
||||
Q_strncpy( szName, cl->name, sizeof( szName ) );
|
||||
Q_strncpy( szAddress, NET_AdrToString( cl->netchan.remote_address ), sizeof( szAddress ) );
|
||||
Q_strncpy( szRejectReason, "Connection rejected by game\n", sizeof( szRejectReason ) );
|
||||
|
||||
// Allow the game dll to reject this client.
|
||||
if( !svgame.dllFuncs.pfnClientConnect( cl->edict, szName, szAddress, szRejectReason ))
|
||||
@ -1686,7 +1686,7 @@ void SV_UserinfoChanged( sv_client_t *cl )
|
||||
val = Info_ValueForKey( cl->userinfo, "name" );
|
||||
}
|
||||
|
||||
if( !Q_strlen( name1 ))
|
||||
if( !COM_CheckStringEmpty( name1 ) )
|
||||
{
|
||||
Info_SetValueForKey( cl->userinfo, "name", "unnamed", MAX_INFO_STRING );
|
||||
val = Info_ValueForKey( cl->userinfo, "name" );
|
||||
@ -1724,7 +1724,7 @@ void SV_UserinfoChanged( sv_client_t *cl )
|
||||
|
||||
// rate command
|
||||
val = Info_ValueForKey( cl->userinfo, "rate" );
|
||||
if( Q_strlen( val ))
|
||||
if( COM_CheckString( val ) )
|
||||
cl->netchan.rate = bound( MIN_RATE, Q_atoi( val ), MAX_RATE );
|
||||
else cl->netchan.rate = DEFAULT_RATE;
|
||||
|
||||
@ -1745,7 +1745,7 @@ void SV_UserinfoChanged( sv_client_t *cl )
|
||||
|
||||
val = Info_ValueForKey( cl->userinfo, "cl_updaterate" );
|
||||
|
||||
if( Q_strlen( val ))
|
||||
if( COM_CheckString( val ) )
|
||||
{
|
||||
if( Q_atoi( val ) != 0 )
|
||||
{
|
||||
|
@ -379,7 +379,7 @@ void SV_Load_f( void )
|
||||
return;
|
||||
}
|
||||
|
||||
Q_snprintf( path, sizeof( path ), "%s%s.sav", DEFAULT_SAVE_DIRECTORY, Cmd_Argv( 1 ));
|
||||
Q_snprintf( path, sizeof( path ), DEFAULT_SAVE_DIRECTORY "%s.sav", Cmd_Argv( 1 ));
|
||||
SV_LoadGame( path );
|
||||
}
|
||||
|
||||
@ -442,8 +442,8 @@ void SV_DeleteSave_f( void )
|
||||
}
|
||||
|
||||
// delete save and saveshot
|
||||
FS_Delete( va( "%s%s.sav", DEFAULT_SAVE_DIRECTORY, Cmd_Argv( 1 )));
|
||||
FS_Delete( va( "%s%s.bmp", DEFAULT_SAVE_DIRECTORY, Cmd_Argv( 1 )));
|
||||
FS_Delete( va( DEFAULT_SAVE_DIRECTORY "%s.sav", Cmd_Argv( 1 )));
|
||||
FS_Delete( va( DEFAULT_SAVE_DIRECTORY "%s.bmp", Cmd_Argv( 1 )));
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -212,7 +212,7 @@ void SV_TransferConsistencyInfo( void )
|
||||
SetBits( pResource->ucFlags, RES_CHECKFILE );
|
||||
|
||||
if( pResource->type == t_sound )
|
||||
Q_snprintf( filepath, sizeof( filepath ), "%s%s", DEFAULT_SOUNDPATH, pResource->szFileName );
|
||||
Q_snprintf( filepath, sizeof( filepath ), DEFAULT_SOUNDPATH "%s", pResource->szFileName );
|
||||
else Q_strncpy( filepath, pResource->szFileName, sizeof( filepath ));
|
||||
|
||||
MD5_HashFile( pResource->rgucMD5_hash, filepath, NULL );
|
||||
|
@ -772,7 +772,8 @@ void SV_WriteEntityPatch( const char *filename )
|
||||
dheader_t *header;
|
||||
file_t *f;
|
||||
|
||||
Q_strncpy( bspfilename, va( "maps/%s.bsp", filename ), sizeof( bspfilename ));
|
||||
Q_snprintf( bspfilename, sizeof( bspfilename ), "maps/%s.bsp", filename );
|
||||
|
||||
f = FS_Open( bspfilename, "rb", false );
|
||||
if( !f ) return;
|
||||
|
||||
@ -824,7 +825,8 @@ static char *SV_ReadEntityScript( const char *filename, int *flags )
|
||||
|
||||
*flags = 0;
|
||||
|
||||
Q_strncpy( bspfilename, va( "maps/%s.bsp", filename ), sizeof( bspfilename ));
|
||||
Q_snprintf( bspfilename, sizeof( bspfilename ), "maps/%s.bsp", filename );
|
||||
|
||||
f = FS_Open( bspfilename, "rb", false );
|
||||
if( !f ) return NULL;
|
||||
|
||||
@ -846,7 +848,7 @@ static char *SV_ReadEntityScript( const char *filename, int *flags )
|
||||
lumplen = header->lumps[LUMP_ENTITIES].filelen;
|
||||
|
||||
// check for entfile too
|
||||
Q_strncpy( entfilename, va( "maps/%s.ent", filename ), sizeof( entfilename ));
|
||||
Q_snprintf( entfilename, sizeof( entfilename ), "maps/%s.ent", filename );
|
||||
|
||||
// make sure what entity patch is newer than bsp
|
||||
ft1 = FS_FileTime( bspfilename, false );
|
||||
@ -888,10 +890,12 @@ int SV_MapIsValid( const char *filename, const char *spawn_entity, const char *l
|
||||
|
||||
if( ents )
|
||||
{
|
||||
qboolean need_landmark = Q_strlen( landmark_name ) > 0 ? true : false;
|
||||
qboolean need_landmark;
|
||||
char token[MAX_TOKEN];
|
||||
string check_name;
|
||||
|
||||
need_landmark = COM_CheckString( landmark_name );
|
||||
|
||||
// g-cont. in-dev mode we can entering on map even without "info_player_start"
|
||||
if( !need_landmark && host_developer.value )
|
||||
{
|
||||
|
@ -67,7 +67,7 @@ void SV_SendSingleResource( const char *name, resourcetype_t type, int index, by
|
||||
nSize = ( name[0] != '*' ) ? FS_FileSize( name, false ) : 0;
|
||||
break;
|
||||
case t_sound:
|
||||
nSize = FS_FileSize( va( "%s%s", DEFAULT_SOUNDPATH, name ), false );
|
||||
nSize = FS_FileSize( va( DEFAULT_SOUNDPATH "%s", name ), false );
|
||||
break;
|
||||
default:
|
||||
nSize = FS_FileSize( name, false );
|
||||
@ -358,7 +358,7 @@ void SV_CreateResourceList( void )
|
||||
}
|
||||
else
|
||||
{
|
||||
nSize = FS_FileSize( va( "%s%s", DEFAULT_SOUNDPATH, s ), false );
|
||||
nSize = FS_FileSize( va( DEFAULT_SOUNDPATH "%s", s ), false );
|
||||
SV_AddResource( t_sound, s, nSize, 0, i );
|
||||
}
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ void Log_Open( void )
|
||||
today = localtime( <ime );
|
||||
temp = Cvar_VariableString( "logsdir" );
|
||||
|
||||
if( temp && Q_strlen( temp ) > 0 && !Q_strstr( temp, ":" ) && !Q_strstr( temp, ".." ))
|
||||
if( COM_CheckString( temp ) && !Q_strchr( temp, ':' ) && !Q_strstr( temp, ".." ))
|
||||
Q_snprintf( szFileBase, sizeof( szFileBase ), "%s/L%02i%02i", temp, today->tm_mon + 1, today->tm_mday );
|
||||
else Q_snprintf( szFileBase, sizeof( szFileBase ), "logs/L%02i%02i", today->tm_mon + 1, today->tm_mday );
|
||||
|
||||
@ -100,7 +100,8 @@ void Log_Printf( const char *fmt, ... )
|
||||
static char string[1024];
|
||||
char *p;
|
||||
time_t ltime;
|
||||
struct tm *today;
|
||||
struct tm *today;
|
||||
int len;
|
||||
|
||||
if( !svs.log.active )
|
||||
return;
|
||||
@ -108,13 +109,13 @@ void Log_Printf( const char *fmt, ... )
|
||||
time( <ime );
|
||||
today = localtime( <ime );
|
||||
|
||||
Q_snprintf( string, sizeof( string ), "%02i/%02i/%04i - %02i:%02i:%02i: ",
|
||||
len = Q_snprintf( string, sizeof( string ), "%02i/%02i/%04i - %02i:%02i:%02i: ",
|
||||
today->tm_mon+1, today->tm_mday, 1900 + today->tm_year, today->tm_hour, today->tm_min, today->tm_sec );
|
||||
|
||||
p = string + Q_strlen( string );
|
||||
p = string + len;
|
||||
|
||||
va_start( argptr, fmt );
|
||||
Q_vsnprintf( p, sizeof( string ) - Q_strlen( string ), fmt, argptr );
|
||||
Q_vsnprintf( p, sizeof( string ) - len, fmt, argptr );
|
||||
va_end( argptr );
|
||||
|
||||
if( svs.log.net_log )
|
||||
|
@ -398,7 +398,7 @@ static void ClearSaveDir( void )
|
||||
int i;
|
||||
|
||||
// just delete all HL? files
|
||||
t = FS_Search( va( "%s*.HL?", DEFAULT_SAVE_DIRECTORY ), true, true );
|
||||
t = FS_Search( DEFAULT_SAVE_DIRECTORY "*.HL?", true, true );
|
||||
if( !t ) return; // already empty
|
||||
|
||||
for( i = 0; i < t->numfilenames; i++ )
|
||||
@ -491,8 +491,8 @@ static void AgeSaveList( const char *pName, int count )
|
||||
char newShot[MAX_OSPATH], oldShot[MAX_OSPATH];
|
||||
|
||||
// delete last quick/autosave (e.g. quick05.sav)
|
||||
Q_snprintf( newName, sizeof( newName ), "%s%s%02d.sav", DEFAULT_SAVE_DIRECTORY, pName, count );
|
||||
Q_snprintf( newShot, sizeof( newShot ), "%s%s%02d.bmp", DEFAULT_SAVE_DIRECTORY, pName, count );
|
||||
Q_snprintf( newName, sizeof( newName ), DEFAULT_SAVE_DIRECTORY "%s%02d.sav", pName, count );
|
||||
Q_snprintf( newShot, sizeof( newShot ), DEFAULT_SAVE_DIRECTORY "%s%02d.bmp", pName, count );
|
||||
|
||||
// only delete from game directory, basedir is read-only
|
||||
FS_Delete( newName );
|
||||
@ -508,18 +508,18 @@ static void AgeSaveList( const char *pName, int count )
|
||||
if( count == 1 )
|
||||
{
|
||||
// quick.sav
|
||||
Q_snprintf( oldName, sizeof( oldName ), "%s%s.sav", DEFAULT_SAVE_DIRECTORY, pName );
|
||||
Q_snprintf( oldShot, sizeof( oldShot ), "%s%s.bmp", DEFAULT_SAVE_DIRECTORY, pName );
|
||||
Q_snprintf( oldName, sizeof( oldName ), DEFAULT_SAVE_DIRECTORY "%s.sav", pName );
|
||||
Q_snprintf( oldShot, sizeof( oldShot ), DEFAULT_SAVE_DIRECTORY "%s.bmp", pName );
|
||||
}
|
||||
else
|
||||
{
|
||||
// quick04.sav, etc.
|
||||
Q_snprintf( oldName, sizeof( oldName ), "%s%s%02d.sav", DEFAULT_SAVE_DIRECTORY, pName, count - 1 );
|
||||
Q_snprintf( oldShot, sizeof( oldShot ), "%s%s%02d.bmp", DEFAULT_SAVE_DIRECTORY, pName, count - 1 );
|
||||
Q_snprintf( oldName, sizeof( oldName ), DEFAULT_SAVE_DIRECTORY "%s%02d.sav", pName, count - 1 );
|
||||
Q_snprintf( oldShot, sizeof( oldShot ), DEFAULT_SAVE_DIRECTORY "%s%02d.bmp", pName, count - 1 );
|
||||
}
|
||||
|
||||
Q_snprintf( newName, sizeof( newName ), "%s%s%02d.sav", DEFAULT_SAVE_DIRECTORY, pName, count );
|
||||
Q_snprintf( newShot, sizeof( newShot ), "%s%s%02d.bmp", DEFAULT_SAVE_DIRECTORY, pName, count );
|
||||
Q_snprintf( newName, sizeof( newName ), DEFAULT_SAVE_DIRECTORY "%s%02d.sav", pName, count );
|
||||
Q_snprintf( newShot, sizeof( newShot ), DEFAULT_SAVE_DIRECTORY "%s%02d.bmp", pName, count );
|
||||
|
||||
#if !XASH_DEDICATED
|
||||
// unloading the oldshot footprint too
|
||||
@ -584,7 +584,7 @@ static void DirectoryExtract( file_t *pFile, int fileCount )
|
||||
// filename can only be as long as a map name + extension
|
||||
FS_Read( pFile, szName, MAX_OSPATH );
|
||||
FS_Read( pFile, &fileSize, sizeof( int ));
|
||||
Q_snprintf( fileName, sizeof( fileName ), "%s%s", DEFAULT_SAVE_DIRECTORY, szName );
|
||||
Q_snprintf( fileName, sizeof( fileName ), DEFAULT_SAVE_DIRECTORY "%s", szName );
|
||||
COM_FixSlashes( fileName );
|
||||
|
||||
pCopy = FS_Open( fileName, "wb", true );
|
||||
@ -773,7 +773,7 @@ static int GetClientDataSize( const char *level )
|
||||
char name[MAX_QPATH];
|
||||
file_t *pFile;
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL2", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL2", level );
|
||||
|
||||
if(( pFile = FS_Open( name, "rb", true )) == NULL )
|
||||
return 0;
|
||||
@ -819,7 +819,7 @@ static SAVERESTOREDATA *LoadSaveData( const char *level )
|
||||
int totalSize;
|
||||
file_t *pFile;
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL1", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL1", level );
|
||||
Con_Printf( "Loading game from %s...\n", name );
|
||||
|
||||
if(( pFile = FS_Open( name, "rb", true )) == NULL )
|
||||
@ -929,7 +929,7 @@ static void EntityPatchWrite( SAVERESTOREDATA *pSaveData, const char *level )
|
||||
int i, size = 0;
|
||||
file_t *pFile;
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL3", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL3", level );
|
||||
|
||||
if(( pFile = FS_Open( name, "wb", true )) == NULL )
|
||||
return;
|
||||
@ -966,7 +966,7 @@ static void EntityPatchRead( SAVERESTOREDATA *pSaveData, const char *level )
|
||||
int i, size, entityId;
|
||||
file_t *pFile;
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL3", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL3", level );
|
||||
|
||||
if(( pFile = FS_Open( name, "rb", true )) == NULL )
|
||||
return;
|
||||
@ -1166,7 +1166,7 @@ static void SaveClientState( SAVERESTOREDATA *pSaveData, const char *level, int
|
||||
// Write entity string token table
|
||||
pTokenData = StoreHashTable( pSaveData );
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL2", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL2", level );
|
||||
|
||||
// output to disk
|
||||
if(( pFile = FS_Open( name, "wb", true )) == NULL )
|
||||
@ -1205,7 +1205,7 @@ static void LoadClientState( SAVERESTOREDATA *pSaveData, const char *level, qboo
|
||||
SAVE_CLIENT header;
|
||||
file_t *pFile;
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL2", DEFAULT_SAVE_DIRECTORY, level );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL2", level );
|
||||
|
||||
if(( pFile = FS_Open( name, "rb", true )) == NULL )
|
||||
return; // something bad is happens
|
||||
@ -1288,7 +1288,7 @@ static void LoadClientState( SAVERESTOREDATA *pSaveData, const char *level, qboo
|
||||
// restore camera view here
|
||||
edict_t *pent = pSaveData->pTable[bound( 0, (word)header.viewentity, pSaveData->tableCount )].pent;
|
||||
|
||||
if( Q_strlen( header.introTrack ))
|
||||
if( COM_CheckStringEmpty( header.introTrack ) )
|
||||
{
|
||||
// NOTE: music is automatically goes across transition, never restore it on changelevel
|
||||
MSG_BeginServerCmd( &sv.signon, svc_stufftext );
|
||||
@ -1390,7 +1390,7 @@ static SAVERESTOREDATA *SaveGameState( int changelevel )
|
||||
|
||||
pSaveData = SaveInit( SAVE_HEAPSIZE, SAVE_HASHSTRINGS );
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.HL1", DEFAULT_SAVE_DIRECTORY, sv.name );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.HL1", sv.name );
|
||||
COM_FixSlashes( name );
|
||||
|
||||
// initialize entity table to count moved entities
|
||||
@ -1612,7 +1612,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
|
||||
SaveFinish( pSaveData );
|
||||
pSaveData = SaveInit( SAVE_HEAPSIZE, SAVE_HASHSTRINGS ); // re-init the buffer
|
||||
|
||||
Q_snprintf( hlPath, sizeof( hlPath ), "%s*.HL?", DEFAULT_SAVE_DIRECTORY );
|
||||
Q_strncpy( hlPath, DEFAULT_SAVE_DIRECTORY "*.HL?", sizeof( hlPath ) );
|
||||
Q_strncpy( gameHeader.mapName, sv.name, sizeof( gameHeader.mapName )); // get the name of level where a player
|
||||
Q_strncpy( gameHeader.comment, pSaveComment, sizeof( gameHeader.comment ));
|
||||
gameHeader.mapCount = DirectoryCount( hlPath ); // counting all the adjacency maps
|
||||
@ -1626,7 +1626,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
|
||||
// Write entity string token table
|
||||
pTokenData = StoreHashTable( pSaveData );
|
||||
|
||||
Q_snprintf( name, sizeof( name ), "%s%s.sav", DEFAULT_SAVE_DIRECTORY, pSaveName );
|
||||
Q_snprintf( name, sizeof( name ), DEFAULT_SAVE_DIRECTORY "%s.sav", pSaveName );
|
||||
COM_FixSlashes( name );
|
||||
|
||||
// output to disk
|
||||
@ -2092,7 +2092,7 @@ void SV_SaveGame( const char *pName )
|
||||
{
|
||||
Q_snprintf( savename, sizeof( savename ), "save%03d", n );
|
||||
|
||||
if( !FS_FileExists( va( "%s%s.sav", DEFAULT_SAVE_DIRECTORY, savename ), true ))
|
||||
if( !FS_FileExists( va( DEFAULT_SAVE_DIRECTORY "%s.sav", savename ), true ))
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2106,7 +2106,7 @@ void SV_SaveGame( const char *pName )
|
||||
|
||||
#if !XASH_DEDICATED
|
||||
// unload previous image from memory (it's will be overwritten)
|
||||
GL_FreeImage( va( "%s%s.bmp", DEFAULT_SAVE_DIRECTORY, savename ));
|
||||
GL_FreeImage( va( DEFAULT_SAVE_DIRECTORY "%s.bmp", savename ) );
|
||||
#endif // XASH_DEDICATED
|
||||
|
||||
SaveBuildComment( comment, sizeof( comment ));
|
||||
@ -2132,7 +2132,7 @@ const char *SV_GetLatestSave( void )
|
||||
int i, found = 0;
|
||||
search_t *t;
|
||||
|
||||
if(( t = FS_Search( va( "%s*.sav", DEFAULT_SAVE_DIRECTORY ), true, true )) == NULL )
|
||||
if(( t = FS_Search( DEFAULT_SAVE_DIRECTORY "*.sav" , true, true )) == NULL )
|
||||
return NULL;
|
||||
|
||||
for( i = 0; i < t->numfilenames; i++ )
|
||||
@ -2176,7 +2176,7 @@ int GAME_EXPORT SV_GetSaveComment( const char *savename, char *comment )
|
||||
if(( f = FS_Open( savename, "rb", true )) == NULL )
|
||||
{
|
||||
// just not exist - clear comment
|
||||
Q_strncpy( comment, "", MAX_STRING );
|
||||
comment[0] = '\0';
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -2305,7 +2305,7 @@ int GAME_EXPORT SV_GetSaveComment( const char *savename, char *comment )
|
||||
FS_Close( f );
|
||||
|
||||
// at least mapname should be filled
|
||||
if( Q_strlen( mapName ) > 0 )
|
||||
if( COM_CheckStringEmpty( mapName ) )
|
||||
{
|
||||
time_t fileTime;
|
||||
const struct tm *file_tm;
|
||||
|
Loading…
Reference in New Issue
Block a user