diff options
author | Anubisss <none@none> | 2009-04-07 00:25:03 +0200 |
---|---|---|
committer | Anubisss <none@none> | 2009-04-07 00:25:03 +0200 |
commit | 01b0fc45cb8cd06b989f0998960843a5b9e8049d (patch) | |
tree | ba33d8f97eb3775231f49792827dd5a21505a82b /src/game/SpellEffects.cpp | |
parent | 0aab67c47d3a0cc6855cb97c5f95e04e0a9de561 (diff) | |
parent | f646e0cc24b9681227d651fe0e64548e5a477b5e (diff) |
*Merge with r2465.
--HG--
branch : trunk
Diffstat (limited to 'src/game/SpellEffects.cpp')
-rw-r--r-- | src/game/SpellEffects.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 7d56e3442b3..54bee661408 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2050,7 +2050,7 @@ void Spell::EffectTriggerSpell(uint32 i) { uint32 dispelMask = GetDispellMask(DISPEL_ALL); Unit::AuraMap& Auras = m_caster->GetAuras(); - for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end(); ++iter) + for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end();) { // remove all harmful spells on you... SpellEntry const* spell = iter->second->GetSpellProto(); @@ -2059,8 +2059,10 @@ void Spell::EffectTriggerSpell(uint32 i) // ignore positive and passive auras && !iter->second->IsPositive() && !iter->second->IsPassive()) { - m_caster->RemoveAura(iter->second); + m_caster->RemoveAura(iter); } + else + iter++; } return; } |