aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2008-12-12 15:11:25 -0600
committermegamage <none@none>2008-12-12 15:11:25 -0600
commit041cbec7de90c4a2f627af95e6842328dfe646fe (patch)
treef18ef4a391adf5585bd722ac75c65c5aa1b6d8bd /src/game/Unit.cpp
parent7827d743a67798f0e5a38f5a2f2b5f65e5080f82 (diff)
*Do not let spell (stun/confuse/fear) interrupt itself (cause crash).
--HG-- branch : trunk
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index f7e02f1469c..c8cf1239587 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -3777,6 +3777,10 @@ void Unit::InterruptSpell(uint32 spellType, bool withDelayed)
if(m_currentSpells[spellType] && (withDelayed || m_currentSpells[spellType]->getState() != SPELL_STATE_DELAYED) )
{
+ // for example, do not let self-stun aura interrupt itself
+ if(!m_currentSpells[spellType]->IsInterruptable())
+ return;
+
// send autorepeat cancel message for autorepeat spells
if (spellType == CURRENT_AUTOREPEAT_SPELL)
{