diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-03-03 18:37:11 +0100 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-06-27 17:35:23 +0200 |
commit | b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67 (patch) | |
tree | 3bd41c8e286ed564213b9a580e4df875f2687e25 /src/core/hle/kernel/synchronization.cpp | |
parent | Core: Correct HLE Event Callbacks and other issues. (diff) | |
download | yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar.gz yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar.bz2 yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar.lz yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar.xz yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.tar.zst yuzu-b4dc01f16affe4baa9a7ab5ac4b240e03c03ae67.zip |
Diffstat (limited to 'src/core/hle/kernel/synchronization.cpp')
-rw-r--r-- | src/core/hle/kernel/synchronization.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/hle/kernel/synchronization.cpp b/src/core/hle/kernel/synchronization.cpp index 4ee7ad93c..ac43a7094 100644 --- a/src/core/hle/kernel/synchronization.cpp +++ b/src/core/hle/kernel/synchronization.cpp @@ -70,6 +70,8 @@ std::pair<ResultCode, Handle> Synchronization::WaitFor( for (auto& object : sync_objects) { object->AddWaitingThread(SharedFrom(thread)); } + + thread->SetSynchronizationObjects(&sync_objects); thread->SetSynchronizationResults(nullptr, RESULT_TIMEOUT); thread->SetStatus(ThreadStatus::WaitSynch); } @@ -83,6 +85,7 @@ std::pair<ResultCode, Handle> Synchronization::WaitFor( SchedulerLock lock(kernel); ResultCode signaling_result = thread->GetSignalingResult(); SynchronizationObject* signaling_object = thread->GetSignalingObject(); + thread->SetSynchronizationObjects(nullptr); for (auto& obj : sync_objects) { obj->RemoveWaitingThread(SharedFrom(thread)); } |