From 1add1c31d8dd96be33398a7cce0ba9cfb71bae8f Mon Sep 17 00:00:00 2001 From: ccrs Date: Wed, 23 Oct 2019 03:28:57 +0200 Subject: Core/Movement: prevent any Initialize queue till AddToWorld is signaled (cherry picked from commit c9c6871659bf2be52b4656bc641df5211fcb928f) --- src/server/game/Movement/MotionMaster.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Movement/MotionMaster.cpp b/src/server/game/Movement/MotionMaster.cpp index 5c045a79049..5521a154ee1 100644 --- a/src/server/game/Movement/MotionMaster.cpp +++ b/src/server/game/Movement/MotionMaster.cpp @@ -95,7 +95,10 @@ MotionMaster::~MotionMaster() void MotionMaster::Initialize() { - if (HasFlag(MOTIONMASTER_FLAG_DELAYED)) + if (HasFlag(MOTIONMASTER_FLAG_INITIALIZATION_PENDING)) + return; + + if (HasFlag(MOTIONMASTER_FLAG_UPDATE)) { DelayedActionDefine action = [this]() { @@ -121,6 +124,7 @@ void MotionMaster::AddToWorld() AddFlag(MOTIONMASTER_FLAG_INITIALIZING); RemoveFlag(MOTIONMASTER_FLAG_INITIALIZATION_PENDING); + DirectInitialize(); ResolveDelayedActions(); RemoveFlag(MOTIONMASTER_FLAG_INITIALIZING); -- cgit v1.2.3