mirror of
https://github.com/ioquake/ioq3.git
synced 2024-11-10 07:11:46 +00:00
Fix banfile writing to wrong game directory
This commit is contained in:
parent
3148416c04
commit
0eb5d1720c
3 changed files with 14 additions and 13 deletions
|
@ -3025,10 +3025,7 @@ static void FS_CheckPak0( void )
|
|||
}
|
||||
}
|
||||
|
||||
if(com_basegame->string[0] &&
|
||||
Q_stricmp(com_basegame->string, BASEGAME) &&
|
||||
!foundPak && !foundTA
|
||||
)
|
||||
if(!foundPak && !foundTA && Q_stricmp(com_basegame->string, BASEGAME))
|
||||
{
|
||||
Cvar_Set("com_standalone", "1");
|
||||
}
|
||||
|
@ -3660,3 +3657,11 @@ void FS_FilenameCompletion( const char *dir, const char *ext,
|
|||
}
|
||||
FS_FreeFileList( filenames );
|
||||
}
|
||||
|
||||
const char *FS_GetCurrentGameDir(void)
|
||||
{
|
||||
if(fs_gamedirvar->string[0])
|
||||
return fs_gamedirvar->string;
|
||||
|
||||
return com_basegame->string;
|
||||
}
|
||||
|
|
|
@ -714,6 +714,8 @@ void FS_HomeRemove( const char *homePath );
|
|||
void FS_FilenameCompletion( const char *dir, const char *ext,
|
||||
qboolean stripExt, void(*callback)(const char *s) );
|
||||
|
||||
const char *FS_GetCurrentGameDir(void);
|
||||
|
||||
/*
|
||||
==============================================================
|
||||
|
||||
|
|
|
@ -549,10 +549,7 @@ static void SV_RehashBans_f(void)
|
|||
if(!sv_banFile->string || !*sv_banFile->string)
|
||||
return;
|
||||
|
||||
if(!(curpos = Cvar_VariableString("fs_game")) || !*curpos)
|
||||
curpos = BASEGAME;
|
||||
|
||||
Com_sprintf(filepath, sizeof(filepath), "%s/%s", curpos, sv_banFile->string);
|
||||
Com_sprintf(filepath, sizeof(filepath), "%s/%s", FS_GetCurrentGameDir(), sv_banFile->string);
|
||||
|
||||
if((filelen = FS_SV_FOpenFileRead(filepath, &readfrom)) >= 0)
|
||||
{
|
||||
|
@ -626,15 +623,12 @@ static void SV_WriteBans(void)
|
|||
{
|
||||
int index;
|
||||
fileHandle_t writeto;
|
||||
char *curpos, filepath[MAX_QPATH];
|
||||
char filepath[MAX_QPATH];
|
||||
|
||||
if(!sv_banFile->string || !*sv_banFile->string)
|
||||
return;
|
||||
|
||||
if(!(curpos = Cvar_VariableString("fs_game")) || !*curpos)
|
||||
curpos = BASEGAME;
|
||||
|
||||
Com_sprintf(filepath, sizeof(filepath), "%s/%s", curpos, sv_banFile->string);
|
||||
Com_sprintf(filepath, sizeof(filepath), "%s/%s", FS_GetCurrentGameDir(), sv_banFile->string);
|
||||
|
||||
if((writeto = FS_SV_FOpenFileWrite(filepath)))
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue