diff options
author | Ovahlord <dreadkiller@gmx.de> | 2022-11-23 21:01:09 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2022-11-23 21:14:45 +0100 |
commit | 4a1989269643a3a441f91c50da6c3153d95a15fe (patch) | |
tree | 4221d5fb07d54930495d2a03a0354de9e3e0845b /src | |
parent | 441c126002c2f0518ee0c7cafa6453c3f16bec3f (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.cpp | 2 |
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; |