From d03a5b802d91946b736880855943678273297ebc Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Wed, 23 Nov 2022 21:01:09 +0100 Subject: Core/Units: ensure that we use valid iterators when providing spell Ids in Unit::RemoveAppliedAuras and Unit::RemoveOwnedAuras (cherry picked from commit 4a1989269643a3a441f91c50da6c3153d95a15fe) --- src/server/game/Entities/Unit/Unit.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 0f6cd37659a..69d54dc4ea0 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -3644,6 +3644,7 @@ void Unit::RemoveAppliedAuras(uint32 spellId, std::functionsecond)) { RemoveAura(iter, removeMode); + iter = m_appliedAuras.lower_bound(spellId); continue; } ++iter; @@ -3657,6 +3658,7 @@ void Unit::RemoveOwnedAuras(uint32 spellId, std::function con if (check(iter->second)) { RemoveOwnedAura(iter, removeMode); + iter = m_ownedAuras.lower_bound(spellId); continue; } ++iter; -- cgit v1.2.3