aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormegamage <none@none.none>2011-10-07 18:06:33 -0400
committermegamage <none@none.none>2011-10-07 18:06:33 -0400
commit8c9bd67fe92ba1109d8f53e9c15d4fc31acb5c9c (patch)
tree1d64a12c26084ea6f8efa6446a2e13fad3d51715
parent47994f82d7443479b411f66f16daee0cbda69d60 (diff)
Fix crash #3274 in Unit::HandleDummyAuraProc
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 0a8bf651bfb..3d51cbe5255 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -5766,6 +5766,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Blessing of Ancient Kings (Val'anyr, Hammer of Ancient Kings)
case 64411:
{
+ if(!victim)
+ return false;
basepoints0 = int32(CalculatePctN(damage, 15));
if (AuraEffect* aurEff = victim->GetAuraEffect(64413, 0, GetGUID()))
{
@@ -6065,6 +6067,9 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Divine Aegis
if (dummySpell->SpellIconID == 2820)
{
+ if(!target)
+ return false;
+
// Multiple effects stack, so let's try to find this aura.
int32 bonus = 0;
if (AuraEffect const* aurEff = target->GetAuraEffect(47753, 0))
@@ -6528,6 +6533,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Explosive Shot
if (procSpell->SpellFamilyFlags[2] & 0x200)
{
+ if(!victim)
+ return false;
if (AuraEffect const* pEff = victim->GetAuraEffect(SPELL_AURA_PERIODIC_DUMMY, SPELLFAMILY_HUNTER, 0x0, 0x80000000, 0x0, GetGUID()))
basepoints0 = pEff->GetSpellInfo()->CalcPowerCost(this, SpellSchoolMask(pEff->GetSpellInfo()->SchoolMask)) * 4/10/3;
}
@@ -7224,6 +7231,8 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
// Item - Shaman T10 Elemental 4P Bonus
case 70817:
{
+ if(!target)
+ return false;
// try to find spell Flame Shock on the target
if (AuraEffect const* aurEff = target->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_SHAMAN, 0x10000000, 0x0, 0x0, GetGUID()))
{