diff --git a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp index 9c2fa2f828..afb963804a 100644 --- a/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp +++ b/Gems/Multiplayer/Code/Source/MultiplayerSystemComponent.cpp @@ -219,7 +219,8 @@ namespace Multiplayer // Cleanup connections, fire events and uninitialize state auto visitor = [reason](IConnection& connection) { connection.Disconnect(reason, TerminationEndpoint::Local); }; m_networkInterface->GetConnectionSet().VisitConnections(visitor); - if (GetAgentType() == MultiplayerAgentType::DedicatedServer || GetAgentType() == MultiplayerAgentType::ClientServer) + MultiplayerAgentType agentType = GetAgentType(); + if (agentType == MultiplayerAgentType::DedicatedServer || agentType == MultiplayerAgentType::ClientServer) { m_networkInterface->StopListening(); m_shutdownEvent.Signal(m_networkInterface); @@ -227,7 +228,7 @@ namespace Multiplayer InitializeMultiplayer(MultiplayerAgentType::Uninitialized); // Signal session management, do this after uninitializing state - if (GetAgentType() == MultiplayerAgentType::DedicatedServer || GetAgentType() == MultiplayerAgentType::ClientServer) + if (agentType == MultiplayerAgentType::DedicatedServer || agentType == MultiplayerAgentType::ClientServer) { if (AZ::Interface::Get() != nullptr) {