diff options
author | Shauren <shauren.trinity@gmail.com> | 2014-03-22 19:44:54 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2014-03-22 19:44:54 +0100 |
commit | 3c16c63293e417921a34756a00cacad53f410e3c (patch) | |
tree | 6e338229c839ae5d997ff88b5accaa891c930aae /src/server/game/Maps/Map.cpp | |
parent | 529cabea68ab90e34ccafa276fc40a8f2723902b (diff) |
Core/Transports: Fixed crashes happening when a transport was despawned with players/dynamicobjects on it
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
-rw-r--r-- | src/server/game/Maps/Map.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index 9a26f0ae0e4..0fc56516c56 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -2650,7 +2650,10 @@ void Map::RemoveAllObjectsInRemoveList() RemoveFromMap((DynamicObject*)obj, true); break; case TYPEID_GAMEOBJECT: - RemoveFromMap((GameObject*)obj, true); + if (Transport* transport = obj->ToGameObject()->ToTransport()) + RemoveFromMap(transport, true); + else + RemoveFromMap(obj->ToGameObject(), true); break; case TYPEID_UNIT: // in case triggered sequence some spell can continue casting after prev CleanupsBeforeDelete call |