From 4826a192a03281fce25eb6395e6e3629683d8b9b Mon Sep 17 00:00:00 2001 From: VladimirMangos Date: Sat, 22 Aug 2009 07:39:34 +0400 Subject: [PATCH] [8404] Prevent triggering from deleted auras. This possible at recursive spell event triggering case. --- src/game/Unit.cpp | 4 ++++ src/shared/revision_nr.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index dabb9ae62..31071b6ed 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -11043,6 +11043,10 @@ void Unit::ProcDamageAndSpellFor( bool isVictim, Unit * pTarget, uint32 procFlag // Fill procTriggered list for(AuraMap::const_iterator itr = GetAuras().begin(); itr!= GetAuras().end(); ++itr) { + // skip deleted auras (possible at recursive triggered call + if(itr->second->IsDeleted()) + continue; + SpellProcEventEntry const* spellProcEvent = NULL; if(!IsTriggeredAtSpellProcEvent(pTarget, itr->second, procSpell, procFlag, procExtra, attType, isVictim, (damage > 0), spellProcEvent)) continue; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 618f39f34..75cca0178 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8403" + #define REVISION_NR "8404" #endif // __REVISION_NR_H__