diff options
author | Shauren <shauren.trinity@gmail.com> | 2015-09-30 00:31:21 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2015-09-30 00:31:21 +0200 |
commit | 8745e08be020471db886e11a3a7512a751141562 (patch) | |
tree | e1283916edf5b76baafb49a199be019ffd1d2d7f /src/server/game/Maps/Map.cpp | |
parent | 3fceabfa113983549b5784dfd3f42259a53c258b (diff) |
Core/Transports: Fixed accessing deleted instance transports
Thanks @jackpoz for valgrind log and @pete318 for reproduction steps
Closes #15633
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
-rw-r--r-- | src/server/game/Maps/Map.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index 1e35722202c..85cc87eaa6e 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -404,6 +404,13 @@ void Map::DeleteFromWorld(Player* player) delete player; } +template<> +void Map::DeleteFromWorld(Transport* transport) +{ + ObjectAccessor::RemoveObject(transport); + delete transport; +} + void Map::EnsureGridCreated(const GridCoord &p) { std::lock_guard<std::mutex> lock(_gridLock); |