Use sead::OffsetList::robustRange() when possible to simplify iteration

This commit is contained in:
Léo Lam
2022-03-05 19:09:32 +01:00
parent d839816081
commit 88a0a9eb69
4 changed files with 12 additions and 13 deletions
@@ -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);
}
}