Prechádzať zdrojové kódy

Merge pull request #12825 from liamwhite/why

kernel: clear pinned waiter list on unpin
liamwhite 2 rokov pred
rodič
commit
077a50a547
1 zmenil súbory, kde vykonal 2 pridanie a 1 odobranie
  1. 2 1
      src/core/hle/kernel/k_thread.cpp

+ 2 - 1
src/core/hle/kernel/k_thread.cpp

@@ -543,7 +543,8 @@ void KThread::Unpin() {
     ASSERT(m_parent != nullptr);
 
     // Resume any threads that began waiting on us while we were pinned.
-    for (auto it = m_pinned_waiter_list.begin(); it != m_pinned_waiter_list.end(); ++it) {
+    for (auto it = m_pinned_waiter_list.begin(); it != m_pinned_waiter_list.end();
+         it = m_pinned_waiter_list.erase(it)) {
         it->EndWait(ResultSuccess);
     }
 }