diff --git a/GeneralsMD/Code/GameEngineDevice/Source/Win32Device/Common/Win32GameEngine.cpp b/GeneralsMD/Code/GameEngineDevice/Source/Win32Device/Common/Win32GameEngine.cpp index acf52caa121..9c7ac114db8 100644 --- a/GeneralsMD/Code/GameEngineDevice/Source/Win32Device/Common/Win32GameEngine.cpp +++ b/GeneralsMD/Code/GameEngineDevice/Source/Win32Device/Common/Win32GameEngine.cpp @@ -114,7 +114,9 @@ void Win32GameEngine::update() // If we are running a multiplayer game, keep running the logic. // There is code in the client to skip client redraw if we are // iconic. jba. - if (TheGameEngine->getQuitting() || TheGameLogic->isInInternetGame() || TheGameLogic->isInLanGame()) { + // GO_CHANGE: If we have an active network session, keep running to prevent disconnecting us from + // other players during lobby and loading screen where isInMultiplayerGame() returns false + if (TheGameEngine->getQuitting() || TheGameLogic->isInMultiplayerGame() || (TheNetwork != nullptr)) { break; // keep running. } }