engine: server: use safe cvar unlinking for mods that deallocate cvars (like HL Unified SDK)
This commit is contained in:
parent
7ccf651fd0
commit
5d79d93aac
1 changed files with 5 additions and 1 deletions
|
@ -5115,6 +5115,8 @@ void SV_SpawnEntities( const char *mapname )
|
||||||
|
|
||||||
void SV_UnloadProgs( void )
|
void SV_UnloadProgs( void )
|
||||||
{
|
{
|
||||||
|
pending_cvar_t *pending_cvars_list;
|
||||||
|
|
||||||
if( !svgame.hInstance )
|
if( !svgame.hInstance )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -5124,6 +5126,8 @@ void SV_UnloadProgs( void )
|
||||||
/// SV_UnloadProgs will be disabled
|
/// SV_UnloadProgs will be disabled
|
||||||
//Mod_ClearUserData ();
|
//Mod_ClearUserData ();
|
||||||
|
|
||||||
|
pending_cvars_list = Cvar_PrepareToUnlink( FCVAR_EXTDLL );
|
||||||
|
|
||||||
if( svgame.dllFuncs2.pfnGameShutdown != NULL )
|
if( svgame.dllFuncs2.pfnGameShutdown != NULL )
|
||||||
svgame.dllFuncs2.pfnGameShutdown ();
|
svgame.dllFuncs2.pfnGameShutdown ();
|
||||||
|
|
||||||
|
@ -5141,7 +5145,7 @@ void SV_UnloadProgs( void )
|
||||||
|
|
||||||
// must unlink all game cvars,
|
// must unlink all game cvars,
|
||||||
// before pointers on them will be lost...
|
// before pointers on them will be lost...
|
||||||
Cvar_Unlink( FCVAR_EXTDLL );
|
Cvar_UnlinkPendingCvars( pending_cvars_list );
|
||||||
Cmd_Unlink( CMD_SERVERDLL );
|
Cmd_Unlink( CMD_SERVERDLL );
|
||||||
|
|
||||||
SV_FreeStringPool();
|
SV_FreeStringPool();
|
||||||
|
|
Loading…
Add table
Reference in a new issue