From e17df40a570d79eef75f7cba47af32154a3f079f Mon Sep 17 00:00:00 2001 From: blinkysc <37940565+blinkysc@users.noreply.github.com> Date: Tue, 24 Feb 2026 19:38:11 -0600 Subject: [PATCH] fix(Core/Spells): Fix SetSpellModTakingSpell assert from re-entrant calls (#24863) Co-authored-by: blinkysc --- src/server/game/Entities/Player/Player.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index c2ea1d5f9..532263828 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -10027,10 +10027,10 @@ bool Player::HasSpellModApplied(SpellModifier* mod, Spell* spell) void Player::SetSpellModTakingSpell(Spell* spell, bool apply) { - if (apply && m_spellModTakingSpell) - ASSERT(m_spellModTakingSpell == nullptr); - else if (!apply) - ASSERT(m_spellModTakingSpell && m_spellModTakingSpell == spell); + if (apply && m_spellModTakingSpell && m_spellModTakingSpell != spell) + return; + else if (!apply && m_spellModTakingSpell != spell) + return; m_spellModTakingSpell = apply ? spell : nullptr; }