mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-13 01:08:35 +00:00
fix: crashlog player::RestoreSpellMods
This commit is contained in:
@@ -15971,6 +15971,13 @@ void Unit::CleanupBeforeRemoveFromMap(bool finalCleanup)
|
||||
if (IsInWorld()) // not in world and not being removed atm
|
||||
RemoveFromWorld();
|
||||
|
||||
// added for mod_playerbots crash fixes; m_Events.KillAllEvents(false) placed after RemoveFromWorld and
|
||||
// interupt and before RemoveAllAuras.
|
||||
// Cancel and remove pending events (including SpellEvent) before aura/spellmod cleanup.
|
||||
// Without this, SpellEvent may be cancelled later during EventProcessor destruction after auras/spellmods are gone,
|
||||
// leading to invalid access in Player::RestoreSpellMods on logout.
|
||||
m_Events.KillAllEvents(false);
|
||||
|
||||
ASSERT(GetGUID());
|
||||
|
||||
// A unit may be in removelist and not in world, but it is still in grid
|
||||
|
||||
Reference in New Issue
Block a user