diff options
author | jackpoz <giacomopoz@gmail.com> | 2019-09-07 18:22:26 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-12-18 21:47:11 +0100 |
commit | 2eea34fb47ade2ab3bf8d46d18a9880a007a2274 (patch) | |
tree | ab21c5e0065b6bba301a5ae7498b5782cd493a53 /src | |
parent | eb83175e9137685710a4128c655d12a05d94c4c6 (diff) |
Core/MovementGenerator: Fix crash in taxi paths
Fix a crash in taxi paths happening when joining a battleground/dungeon while on a taxi path after second last node but close to last node, then leaving/finishing the battleground.
(cherry picked from commit 680e1cbd6cf7c52abe104fb87d8fa6dba83fb633)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp index 1a64027ee39..a3983a3390c 100644 --- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp @@ -97,7 +97,7 @@ bool FlightPathMovementGenerator::DoUpdate(Player* owner, uint32 /*diff*/) return false; uint32 pointId = owner->movespline->currentPathIdx() < 0 ? 0 : owner->movespline->currentPathIdx(); - if (pointId > _currentNode) + if (pointId > _currentNode && _currentNode < _path.size()) { bool departureEvent = true; do @@ -116,7 +116,7 @@ bool FlightPathMovementGenerator::DoUpdate(Player* owner, uint32 /*diff*/) } } - if (pointId == _currentNode) + if (pointId >= _currentNode) break; if (_currentNode == _preloadTargetNode) |