From 680e1cbd6cf7c52abe104fb87d8fa6dba83fb633 Mon Sep 17 00:00:00 2001 From: jackpoz Date: Sat, 7 Sep 2019 18:22:26 +0200 Subject: 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. --- .../game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp index 49eb3422cb5..bc84dacc3e4 100644 --- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp @@ -93,7 +93,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 @@ -112,7 +112,7 @@ bool FlightPathMovementGenerator::DoUpdate(Player* owner, uint32 /*diff*/) } } - if (pointId == _currentNode) + if (pointId >= _currentNode) break; if (_currentNode == _preloadTargetNode) -- cgit v1.2.3