diff options
author | jackpoz <giacomopoz@gmail.com> | 2017-12-08 15:14:51 +0100 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2017-12-08 15:14:51 +0100 |
commit | 925557d1c097cd45311b38dc3a9c715579456980 (patch) | |
tree | eee3ff427546e271b608919ef7602d3d4a8a6f8d /src/server/game/Maps/Map.cpp | |
parent | 19e99478a70515660615fa8c9d27c7b9581d3098 (diff) |
Core/Misc: Fix static analysis issues
Fix various coverity reported issues
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
-rw-r--r-- | src/server/game/Maps/Map.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index fefe4cca09d..f1af14e5b8d 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -2680,8 +2680,10 @@ void Map::GetFullTerrainStatusForPosition(float x, float y, float z, PositionFul if (vmapData.areaInfo) data.areaInfo = boost::in_place(vmapData.areaInfo->adtId, vmapData.areaInfo->rootId, vmapData.areaInfo->groupId, vmapData.areaInfo->mogpFlags); + float mapHeight = VMAP_INVALID_HEIGHT; GridMap* gmap = const_cast<Map*>(this)->GetGrid(x, y); - float mapHeight = gmap->getHeight(x, y); + if (gmap) + mapHeight = gmap->getHeight(x, y); // area lookup AreaTableEntry const* areaEntry = nullptr; @@ -2689,6 +2691,8 @@ void Map::GetFullTerrainStatusForPosition(float x, float y, float z, PositionFul if (WMOAreaTableEntry const* wmoEntry = GetWMOAreaTableEntryByTripple(vmapData.areaInfo->rootId, vmapData.areaInfo->adtId, vmapData.areaInfo->groupId)) areaEntry = sAreaTableStore.LookupEntry(wmoEntry->areaId); + data.areaId = 0; + if (areaEntry) { data.floorZ = vmapData.floorZ; @@ -2697,7 +2701,8 @@ void Map::GetFullTerrainStatusForPosition(float x, float y, float z, PositionFul else { data.floorZ = mapHeight; - data.areaId = gmap->getArea(x, y); + if (gmap) + data.areaId = gmap->getArea(x, y); if (!data.areaId) data.areaId = i_mapEntry->linked_zone; |