diff options
author | megamage <none@none> | 2009-04-27 21:26:28 -0500 |
---|---|---|
committer | megamage <none@none> | 2009-04-27 21:26:28 -0500 |
commit | 40a74d86a402467d85ab2275f3926c85637359e9 (patch) | |
tree | acdc2ab29882c0cd4d59daca0efea791265389fd /src | |
parent | 4b3af494b3bdb4c067bf6b814e82959220811481 (diff) |
[7725] Fixed memory leak in PlayerDumpWriter.
[7726] Fixed memory leak in InstanceSaveMgr.
Author: AlexDereka
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/InstanceSaveMgr.cpp | 7 | ||||
-rw-r--r-- | src/game/PlayerDump.cpp | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/game/InstanceSaveMgr.cpp b/src/game/InstanceSaveMgr.cpp index 43205cd1e8c..a76da38b449 100644 --- a/src/game/InstanceSaveMgr.cpp +++ b/src/game/InstanceSaveMgr.cpp @@ -555,7 +555,12 @@ void InstanceSaveManager::_ResetSave(InstanceSaveHashMap::iterator &itr) Group *group = *(gList.begin()); group->UnbindInstance(itr->second->GetMapId(), itr->second->GetDifficulty(), true); } - m_instanceSaveById.erase(itr++); + InstanceSaveHashMap::iterator next; + next = itr; + ++next; + delete itr->second; + m_instanceSaveById.erase(itr); + itr = next; lock_instLists = false; } diff --git a/src/game/PlayerDump.cpp b/src/game/PlayerDump.cpp index d29bb184b09..5879741b61d 100644 --- a/src/game/PlayerDump.cpp +++ b/src/game/PlayerDump.cpp @@ -358,6 +358,8 @@ std::string PlayerDumpWriter::GetDump(uint32 guid) } else sLog.outError("Table 'character_db_version' not have revision guard field, revision guard query not added to pdump."); + + delete result; } else sLog.outError("Character DB not have 'character_db_version' table, revision guard query not added to pdump."); |