From fb5d05c1987df4fd4673e6f6831ce0579db9df2a Mon Sep 17 00:00:00 2001 From: QAston Date: Wed, 22 Feb 2012 21:06:29 +0100 Subject: Core/Spells: Prevent assertion failure in Spell::SelectImplicitDestDestTargets by setting dest to caster if no dest provided. --- src/server/game/Spells/Spell.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/server/game/Spells/Spell.cpp') diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index d4f23d1d68e..b4ee4febbef 100755 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -1441,6 +1441,13 @@ void Spell::SelectImplicitTargetDestTargets(SpellEffIndex effIndex, SpellImplici void Spell::SelectImplicitDestDestTargets(SpellEffIndex effIndex, SpellImplicitTargetInfo const& targetType) { + // set destination to caster if no dest provided + // can only happen if previous destination target could not be set for some reason + // (not found nearby target, or channel target for example + // maybe we should abort the spell in such case? + if (!m_targets.HasDst()) + m_targets.SetDst(*m_caster); + switch(targetType.GetTarget()) { case TARGET_DEST_DYNOBJ_ENEMY: -- cgit v1.2.3