aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-08-11 18:26:04 -0500
committermegamage <none@none>2009-08-11 18:26:04 -0500
commit978242da3f5deb4ee4bc0e6e3124bf2c66c405d1 (patch)
treeacf6ff21793761887e0792f4a101e3b25562a52b /src/game/Unit.cpp
parent3078bf6fd0be0af62566cd08dddaebd310610be4 (diff)
*Try to fix a crash caused by single target auras. Thanks to QAston.
--HG-- branch : trunk
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index a124dc464c0..01bfe2bf812 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -3924,8 +3924,7 @@ bool Unit::AddAura(Aura *Aur, bool handleEffects)
for(;;)
{
Unit* caster = Aur->GetCaster();
- if(!caster) // caster deleted and not required adding scAura
- break;
+ assert(caster);
bool restart = false;
AuraList& scAuras = caster->GetSingleCastAuras();
@@ -4251,7 +4250,7 @@ void Unit::RemoveNotOwnSingleTargetAuras(uint32 newPhase)
if (aura->GetTarget() != this && !aura->GetTarget()->InSamePhase(newPhase))
{
uint32 removedAuras = m_removedAurasCount;
- aura->GetTarget()->RemoveAura(aura->GetId(),aura->GetCasterGUID());
+ aura->GetTarget()->RemoveAura(aura);
if (removedAuras+1<m_removedAurasCount)
iter=scAuras.begin();
}