aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/thread.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2019-10-10 08:04:14 -0400
committerFernandoS27 <fsahmkow27@gmail.com>2019-10-15 11:55:20 -0400
commit3da21e4b4f8bb03f3ccfda697104179b09695214 (patch)
tree3441b0285be95f9341852b86c383880151c38704 /src/core/hle/kernel/thread.h
parent248795db6e2979c9fe99c35ffa2398b395b53d0f (diff)
Kernel: Corrections to Wait Objects clearing in which a thread could still be signalled after a timeout or a cancel.
Diffstat (limited to 'src/core/hle/kernel/thread.h')
-rw-r--r--src/core/hle/kernel/thread.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h
index 4d220c4f98..ceb4d51591 100644
--- a/src/core/hle/kernel/thread.h
+++ b/src/core/hle/kernel/thread.h
@@ -319,6 +319,9 @@ public:
}
void ClearWaitObjects() {
+ for (const auto& waiting_object : wait_objects) {
+ waiting_object->RemoveWaitingThread(this);
+ }
wait_objects.clear();
}