aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2023-01-12 14:02:21 +0100
committerShauren <shauren.trinity@gmail.com>2023-01-12 14:02:21 +0100
commitf0fa05773f9b4880b130ee245391a8ec34163587 (patch)
tree27975e0c629db63e9f1e1bfb040dd5e172b74c87
parent6cac60782f0bc67c0f4b70b41cac36357fbd2531 (diff)
Core/Spells: Fixed accessing freed memory by Spell::EffectTriggerSpell
Closes #28715
-rw-r--r--src/server/game/Spells/SpellEffects.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 5ac9be3b076..3af28b58daa 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -663,6 +663,8 @@ void Spell::EffectTriggerSpell()
m_caster->m_Events.AddEventAtOffset([caster = m_caster, targets, originalCaster = m_originalCasterGUID, castItemGuid = m_castItemGUID, originalCastId = m_castId,
spellEffectInfo = effectInfo, value = damage, itemLevel = m_castItemLevel]() mutable
{
+ targets.Update(caster); // refresh pointers stored in targets
+
// original caster guid only for GO cast
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
args.SetOriginalCaster(originalCaster);