|
|
@ -1423,12 +1423,14 @@ save serverinfo variables into server.cfg (using for dedicated server too) |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
void GAME_EXPORT Host_WriteServerConfig( const char *name ) |
|
|
|
void GAME_EXPORT Host_WriteServerConfig( const char *name ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
|
|
|
|
qboolean already_loaded; |
|
|
|
file_t *f; |
|
|
|
file_t *f; |
|
|
|
string newconfigfile; |
|
|
|
string newconfigfile; |
|
|
|
|
|
|
|
|
|
|
|
Q_snprintf( newconfigfile, MAX_STRING, "%s.new", name ); |
|
|
|
Q_snprintf( newconfigfile, MAX_STRING, "%s.new", name ); |
|
|
|
|
|
|
|
|
|
|
|
SV_InitGameProgs(); // collect user variables
|
|
|
|
// TODO: remove this mechanism, make it safer for now
|
|
|
|
|
|
|
|
already_loaded = SV_InitGameProgs(); // collect user variables
|
|
|
|
|
|
|
|
|
|
|
|
// FIXME: move this out until menu parser is done
|
|
|
|
// FIXME: move this out until menu parser is done
|
|
|
|
CSCR_LoadDefaultCVars( "settings.scr" ); |
|
|
|
CSCR_LoadDefaultCVars( "settings.scr" ); |
|
|
@ -1447,6 +1449,8 @@ void GAME_EXPORT Host_WriteServerConfig( const char *name ) |
|
|
|
} |
|
|
|
} |
|
|
|
else Con_DPrintf( S_ERROR "Couldn't write %s.\n", name ); |
|
|
|
else Con_DPrintf( S_ERROR "Couldn't write %s.\n", name ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// don't unload library that wasn't loaded by us
|
|
|
|
|
|
|
|
if( already_loaded ) |
|
|
|
SV_FreeGameProgs(); // release progs with all variables
|
|
|
|
SV_FreeGameProgs(); // release progs with all variables
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|