diff options
Diffstat (limited to 'src/core/hle/kernel/synchronization.cpp')
| -rw-r--r-- | src/core/hle/kernel/synchronization.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/hle/kernel/synchronization.cpp b/src/core/hle/kernel/synchronization.cpp index 275bf11cc..851b702a5 100644 --- a/src/core/hle/kernel/synchronization.cpp +++ b/src/core/hle/kernel/synchronization.cpp | |||
| @@ -23,8 +23,10 @@ void Synchronization::SignalObject(SynchronizationObject& obj) const { | |||
| 23 | if (obj.IsSignaled()) { | 23 | if (obj.IsSignaled()) { |
| 24 | for (auto thread : obj.GetWaitingThreads()) { | 24 | for (auto thread : obj.GetWaitingThreads()) { |
| 25 | if (thread->GetSchedulingStatus() == ThreadSchedStatus::Paused) { | 25 | if (thread->GetSchedulingStatus() == ThreadSchedStatus::Paused) { |
| 26 | ASSERT(thread->GetStatus() == ThreadStatus::WaitSynch); | 26 | if (thread->GetStatus() != ThreadStatus::WaitHLEEvent) { |
| 27 | ASSERT(thread->IsWaitingSync()); | 27 | ASSERT(thread->GetStatus() == ThreadStatus::WaitSynch); |
| 28 | ASSERT(thread->IsWaitingSync()); | ||
| 29 | } | ||
| 28 | thread->SetSynchronizationResults(&obj, RESULT_SUCCESS); | 30 | thread->SetSynchronizationResults(&obj, RESULT_SUCCESS); |
| 29 | thread->ResumeFromWait(); | 31 | thread->ResumeFromWait(); |
| 30 | } | 32 | } |