diff options
| author | 2018-06-22 12:08:39 -0400 | |
|---|---|---|
| committer | 2018-06-22 12:08:39 -0400 | |
| commit | 6d7941042bd8badcd8e93521b40cbbc29215351e (patch) | |
| tree | f4b72f5d717e1fffe784b1f4100fe01177b6b02a /src/core/hle/kernel/thread.cpp | |
| parent | Merge pull request #581 from mailwl/empty-buf-skip (diff) | |
| parent | Kernel/Arbiters: Fix casts, cleanup comments/magic numbers (diff) | |
| download | yuzu-6d7941042bd8badcd8e93521b40cbbc29215351e.tar.gz yuzu-6d7941042bd8badcd8e93521b40cbbc29215351e.tar.xz yuzu-6d7941042bd8badcd8e93521b40cbbc29215351e.zip | |
Merge pull request #579 from SciresM/master
svc: Fully implement svcSignalToAddress and svcWaitForAddress
Diffstat (limited to 'src/core/hle/kernel/thread.cpp')
| -rw-r--r-- | src/core/hle/kernel/thread.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index cffa7ca83..2f333ec34 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp | |||
| @@ -140,6 +140,11 @@ static void ThreadWakeupCallback(u64 thread_handle, int cycles_late) { | |||
| 140 | } | 140 | } |
| 141 | } | 141 | } |
| 142 | 142 | ||
| 143 | if (thread->arb_wait_address != 0) { | ||
| 144 | ASSERT(thread->status == THREADSTATUS_WAIT_ARB); | ||
| 145 | thread->arb_wait_address = 0; | ||
| 146 | } | ||
| 147 | |||
| 143 | if (resume) | 148 | if (resume) |
| 144 | thread->ResumeFromWait(); | 149 | thread->ResumeFromWait(); |
| 145 | } | 150 | } |
| @@ -179,6 +184,7 @@ void Thread::ResumeFromWait() { | |||
| 179 | case THREADSTATUS_WAIT_SLEEP: | 184 | case THREADSTATUS_WAIT_SLEEP: |
| 180 | case THREADSTATUS_WAIT_IPC: | 185 | case THREADSTATUS_WAIT_IPC: |
| 181 | case THREADSTATUS_WAIT_MUTEX: | 186 | case THREADSTATUS_WAIT_MUTEX: |
| 187 | case THREADSTATUS_WAIT_ARB: | ||
| 182 | break; | 188 | break; |
| 183 | 189 | ||
| 184 | case THREADSTATUS_READY: | 190 | case THREADSTATUS_READY: |