summaryrefslogtreecommitdiff
path: root/src/KingSystem/ActorSystem/actBaseProcMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/KingSystem/ActorSystem/actBaseProcMgr.cpp')
-rw-r--r--src/KingSystem/ActorSystem/actBaseProcMgr.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/KingSystem/ActorSystem/actBaseProcMgr.cpp b/src/KingSystem/ActorSystem/actBaseProcMgr.cpp
index ecf03b66..9c8c59be 100644
--- a/src/KingSystem/ActorSystem/actBaseProcMgr.cpp
+++ b/src/KingSystem/ActorSystem/actBaseProcMgr.cpp
@@ -310,11 +310,10 @@ void BaseProcMgr::calc() {
for (auto& proc : mProcUpdateStateList)
proc.processStateUpdate(mCounter);
- for (auto it = mProcUpdateStateList.robustBegin(), end = mProcUpdateStateList.robustEnd();
- it != end; ++it) {
- it->afterUpdateState_();
- if (it->mStateFlags.isZero()) {
- mProcUpdateStateList.erase(std::addressof(*it));
+ for (auto& proc : mProcUpdateStateList.robustRange()) {
+ proc.afterUpdateState_();
+ if (proc.mStateFlags.isZero()) {
+ mProcUpdateStateList.erase(&proc);
}
}