diff --git a/lib/CTownHandler.cpp b/lib/CTownHandler.cpp index d9541d545..a064bb0b1 100644 --- a/lib/CTownHandler.cpp +++ b/lib/CTownHandler.cpp @@ -318,6 +318,7 @@ CTownHandler::CTownHandler(): CTownHandler::~CTownHandler() { delete randomTown; + delete randomFaction; } JsonNode readBuilding(CLegacyConfigParser & parser) diff --git a/lib/gameState/CGameState.cpp b/lib/gameState/CGameState.cpp index b2301be4f..23c9792b7 100644 --- a/lib/gameState/CGameState.cpp +++ b/lib/gameState/CGameState.cpp @@ -166,6 +166,8 @@ CGameState::~CGameState() // explicitly delete all ongoing battles first - BattleInfo destructor requires valid CGameState currentBattles.clear(); map.dellNull(); + scenarioOps.dellNull(); + initialOpts.dellNull(); } void CGameState::preInit(Services * services)