浏览代码

fix crash when loading game in battle

kdmcser 5 月之前
父节点
当前提交
7bb7d07230
共有 1 个文件被更改,包括 5 次插入1 次删除
  1. 5 1
      client/Client.cpp

+ 5 - 1
client/Client.cpp

@@ -191,7 +191,6 @@ void CClient::endGame()
 	removeGUI();
 
 	GAME->setMapInstance(nullptr);
-	gamestate.reset();
 
 	logNetwork->info("Deleted mapHandler and gameState.");
 
@@ -200,6 +199,11 @@ void CClient::endGame()
 	battleints.clear();
 	battleCallbacks.clear();
 	playerEnvironments.clear();
+
+	//FIXME: gamestate->currentBattles.clear() will use gamestate. So it shoule be callded before gamestate.reset()
+	gamestate->currentBattles.clear();
+	gamestate.reset();
+
 	logNetwork->info("Deleted playerInts.");
 	logNetwork->info("Client stopped.");
 }