diff options
author | Vincent-Michael <Vincent_Michael@gmx.de> | 2013-08-30 23:46:24 +0200 |
---|---|---|
committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2013-08-30 23:46:24 +0200 |
commit | 38bb6fe8e7935d91cc9e487c73a966689146d8f2 (patch) | |
tree | 348d72809628705ca88e05c29927de12fbba9870 /src/server/collision/Maps/MapTree.cpp | |
parent | 224c5c5d3d4876f6cf05c37d7183205b1b9b565f (diff) | |
parent | 3f6296b65ebd63849f67895f7ab6280b8828da28 (diff) |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts:
src/server/game/AI/EventAI/CreatureEventAIMgr.cpp
src/server/game/Entities/Creature/Creature.h
src/server/game/Entities/Player/Player.cpp
src/server/game/Globals/ObjectMgr.cpp
src/server/game/Handlers/CharacterHandler.cpp
src/server/game/Quests/QuestDef.cpp
src/server/game/Quests/QuestDef.h
Diffstat (limited to 'src/server/collision/Maps/MapTree.cpp')
-rw-r--r-- | src/server/collision/Maps/MapTree.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/collision/Maps/MapTree.cpp b/src/server/collision/Maps/MapTree.cpp index dc12bb68e0d..436f30eed10 100644 --- a/src/server/collision/Maps/MapTree.cpp +++ b/src/server/collision/Maps/MapTree.cpp @@ -156,6 +156,11 @@ namespace VMAP bool StaticMapTree::isInLineOfSight(const Vector3& pos1, const Vector3& pos2) const { float maxDist = (pos2 - pos1).magnitude(); + // return false if distance is over max float, in case of cheater teleporting to the end of the universe + if (maxDist == std::numeric_limits<float>::max() || + maxDist == std::numeric_limits<float>::infinity()) + return false; + // valid map coords should *never ever* produce float overflow, but this would produce NaNs too ASSERT(maxDist < std::numeric_limits<float>::max()); // prevent NaN values which can cause BIH intersection to enter infinite loop |