engine: client: move vgui deinitialization out of CL_UnloadProgs. Delete cls.initialized check in CL_Shutdown, that used to shutdown various client-side subsystems that usually have needed checks by themselves

This commit is contained in:
Alibek Omarov 2022-06-12 03:06:03 +03:00
parent 7c9f5f8ab1
commit 6c7d57e1eb
2 changed files with 4 additions and 5 deletions

View File

@ -3914,7 +3914,6 @@ void CL_UnloadProgs( void )
Cvar_FullSet( "host_clientloaded", "0", FCVAR_READ_ONLY );
COM_FreeLibrary( clgame.hInstance );
VGui_Shutdown();
Mem_FreePool( &cls.mempool );
Mem_FreePool( &clgame.mempool );
memset( &clgame, 0, sizeof( clgame ));

View File

@ -3089,10 +3089,6 @@ CL_Shutdown
*/
void CL_Shutdown( void )
{
// already freed
if( !cls.initialized ) return;
cls.initialized = false;
Con_Printf( "CL_Shutdown()\n" );
if( !host.crashed )
@ -3109,6 +3105,9 @@ void CL_Shutdown( void )
Mobile_Shutdown ();
SCR_Shutdown ();
CL_UnloadProgs ();
cls.initialized = false;
VGui_Shutdown();
FS_Delete( "demoheader.tmp" ); // remove tmp file
SCR_FreeCinematic (); // release AVI's *after* client.dll because custom renderer may use them
@ -3116,4 +3115,5 @@ void CL_Shutdown( void )
R_Shutdown ();
Con_Shutdown ();
}