Просмотр исходного кода

Synchronization: Correct wide Assertion.

Fernando Sahmkow 6 лет назад
Родитель
Сommit
8a78fc2580
1 измененных файлов с 4 добавлено и 2 удалено
  1. 4 2
      src/core/hle/kernel/synchronization.cpp

+ 4 - 2
src/core/hle/kernel/synchronization.cpp

@@ -23,8 +23,10 @@ void Synchronization::SignalObject(SynchronizationObject& obj) const {
     if (obj.IsSignaled()) {
         for (auto thread : obj.GetWaitingThreads()) {
             if (thread->GetSchedulingStatus() == ThreadSchedStatus::Paused) {
-                ASSERT(thread->GetStatus() == ThreadStatus::WaitSynch);
-                ASSERT(thread->IsWaitingSync());
+                if (thread->GetStatus() != ThreadStatus::WaitHLEEvent) {
+                    ASSERT(thread->GetStatus() == ThreadStatus::WaitSynch);
+                    ASSERT(thread->IsWaitingSync());
+                }
                 thread->SetSynchronizationResults(&obj, RESULT_SUCCESS);
                 thread->ResumeFromWait();
             }