aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2022-11-23 21:01:09 +0100
committerOvahlord <dreadkiller@gmx.de>2022-11-23 21:14:45 +0100
commit4a1989269643a3a441f91c50da6c3153d95a15fe (patch)
tree4221d5fb07d54930495d2a03a0354de9e3e0845b /src
parent441c126002c2f0518ee0c7cafa6453c3f16bec3f (diff)
Core/Units: ensure that we use valid iterators when providing spell Ids in Unit::RemoveAppliedAuras and Unit::RemoveOwnedAuras
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 1e828f1f33e..99222f018db 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -3739,6 +3739,7 @@ void Unit::RemoveAppliedAuras(uint32 spellId, std::function<bool(AuraApplication
if (check(iter->second))
{
RemoveAura(iter, removeMode);
+ iter = m_appliedAuras.lower_bound(spellId);
continue;
}
++iter;
@@ -3752,6 +3753,7 @@ void Unit::RemoveOwnedAuras(uint32 spellId, std::function<bool(Aura const*)> con
if (check(iter->second))
{
RemoveOwnedAura(iter, removeMode);
+ iter = m_ownedAuras.lower_bound(spellId);
continue;
}
++iter;