aboutsummaryrefslogtreecommitdiff
path: root/src/server/collision/Models
diff options
context:
space:
mode:
authorLynx3d & Ambal <none@none>2011-04-02 20:36:27 +0200
committerShauren <shauren.trinity@gmail.com>2011-04-02 20:36:27 +0200
commit347098af14076b894fd7f18847d494c0b0e65dc6 (patch)
tree6f3f48fa5ab1cce83a50eda24e4c297b477227e8 /src/server/collision/Models
parenta54713ec4bbfbfc619ef2ed5675722c2b61a7f47 (diff)
Core/Vmaps: Made code more safe and fixed problems in WmoLiquid::GetLiquidHeight()
Diffstat (limited to 'src/server/collision/Models')
-rw-r--r--src/server/collision/Models/WorldModel.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/collision/Models/WorldModel.cpp b/src/server/collision/Models/WorldModel.cpp
index f639b5fc3f4..325594fd6be 100644
--- a/src/server/collision/Models/WorldModel.cpp
+++ b/src/server/collision/Models/WorldModel.cpp
@@ -149,10 +149,12 @@ namespace VMAP
{
float tx_f = (pos.x - iCorner.x)/LIQUID_TILE_SIZE;
uint32 tx = uint32(tx_f);
- if (tx >= iTilesX) return false;
+ if (tx_f < 0.0f || tx >= iTilesX)
+ return false;
float ty_f = (pos.y - iCorner.y)/LIQUID_TILE_SIZE;
uint32 ty = uint32(ty_f);
- if (ty >= iTilesY) return false;
+ if (ty_f < 0.0f || ty >= iTilesY)
+ return false;
// check if tile shall be used for liquid level
// checking for 0x08 *might* be enough, but disabled tiles always are 0x?F: