diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/svc.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp index 34a27917f..c4866fcce 100644 --- a/src/core/hle/svc.cpp +++ b/src/core/hle/svc.cpp | |||
| @@ -144,6 +144,8 @@ static ResultCode WaitSynchronization1(Handle handle, s64 nano_seconds) { | |||
| 144 | LOG_TRACE(Kernel_SVC, "called handle=0x%08X(%s:%s), nanoseconds=%lld", handle, | 144 | LOG_TRACE(Kernel_SVC, "called handle=0x%08X(%s:%s), nanoseconds=%lld", handle, |
| 145 | object->GetTypeName().c_str(), object->GetName().c_str(), nano_seconds); | 145 | object->GetTypeName().c_str(), object->GetName().c_str(), nano_seconds); |
| 146 | 146 | ||
| 147 | HLE::Reschedule(__func__); | ||
| 148 | |||
| 147 | // Check for next thread to schedule | 149 | // Check for next thread to schedule |
| 148 | if (object->ShouldWait()) { | 150 | if (object->ShouldWait()) { |
| 149 | 151 | ||
| @@ -153,8 +155,6 @@ static ResultCode WaitSynchronization1(Handle handle, s64 nano_seconds) { | |||
| 153 | // Create an event to wake the thread up after the specified nanosecond delay has passed | 155 | // Create an event to wake the thread up after the specified nanosecond delay has passed |
| 154 | Kernel::GetCurrentThread()->WakeAfterDelay(nano_seconds); | 156 | Kernel::GetCurrentThread()->WakeAfterDelay(nano_seconds); |
| 155 | 157 | ||
| 156 | HLE::Reschedule(__func__); | ||
| 157 | |||
| 158 | // NOTE: output of this SVC will be set later depending on how the thread resumes | 158 | // NOTE: output of this SVC will be set later depending on how the thread resumes |
| 159 | return RESULT_INVALID; | 159 | return RESULT_INVALID; |
| 160 | } | 160 | } |
| @@ -216,6 +216,8 @@ static ResultCode WaitSynchronizationN(s32* out, Handle* handles, s32 handle_cou | |||
| 216 | } | 216 | } |
| 217 | } | 217 | } |
| 218 | 218 | ||
| 219 | HLE::Reschedule(__func__); | ||
| 220 | |||
| 219 | // If thread should wait, then set its state to waiting and then reschedule... | 221 | // If thread should wait, then set its state to waiting and then reschedule... |
| 220 | if (wait_thread) { | 222 | if (wait_thread) { |
| 221 | 223 | ||
| @@ -229,8 +231,6 @@ static ResultCode WaitSynchronizationN(s32* out, Handle* handles, s32 handle_cou | |||
| 229 | // Create an event to wake the thread up after the specified nanosecond delay has passed | 231 | // Create an event to wake the thread up after the specified nanosecond delay has passed |
| 230 | Kernel::GetCurrentThread()->WakeAfterDelay(nano_seconds); | 232 | Kernel::GetCurrentThread()->WakeAfterDelay(nano_seconds); |
| 231 | 233 | ||
| 232 | HLE::Reschedule(__func__); | ||
| 233 | |||
| 234 | // NOTE: output of this SVC will be set later depending on how the thread resumes | 234 | // NOTE: output of this SVC will be set later depending on how the thread resumes |
| 235 | return RESULT_INVALID; | 235 | return RESULT_INVALID; |
| 236 | } | 236 | } |