From c52737852d3d94a16f078741f7ccf3afe13eb603 Mon Sep 17 00:00:00 2001 From: ModoX Date: Sat, 24 Feb 2024 11:44:02 +0100 Subject: Core/Vehicle: Don't set players movementInfo on vehicle dismiss (#29744) --- src/server/game/Handlers/VehicleHandler.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/game/Handlers/VehicleHandler.cpp b/src/server/game/Handlers/VehicleHandler.cpp index ac4472474b3..f6f0358f3ba 100644 --- a/src/server/game/Handlers/VehicleHandler.cpp +++ b/src/server/game/Handlers/VehicleHandler.cpp @@ -30,8 +30,12 @@ void WorldSession::HandleMoveDismissVehicle(WorldPackets::Vehicle::MoveDismissVe if (vehicleGUID.IsEmpty()) return; - _player->ValidateMovementInfo(&moveDismissVehicle.Status); - _player->m_movementInfo = moveDismissVehicle.Status; + if (moveDismissVehicle.Status.guid != vehicleGUID) + { + TC_LOG_ERROR("network", "Player {} tried to dismiss a controlled vehicle ({}) that he has no control over. Possible cheater or malformed packet.", + GetPlayer()->GetGUID().ToString().c_str(), vehicleGUID.ToString().c_str()); + return; + } _player->ExitVehicle(); } -- cgit v1.2.3