diff options
| author | Subv <subv2112@gmail.com> | 2015-01-07 16:40:08 -0500 |
|---|---|---|
| committer | Subv <subv2112@gmail.com> | 2015-01-08 18:39:12 -0500 |
| commit | dfc440785af73e400e7672377bdf7f65c9eca61c (patch) | |
| tree | 16981e2ec3d97455abe361bf6ebb6ef161df1c19 /src/core/hle/svc.cpp | |
| parent | 91d96840ea698edaf5f2b6e8522d18f00bb18d9c (diff) | |
SVC: Fixed SleepThread.
It will now properly wait the specified number of nanoseconds and then wake up the thread.
Diffstat (limited to 'src/core/hle/svc.cpp')
| -rw-r--r-- | src/core/hle/svc.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp index c25409a9f..4003e0ba9 100644 --- a/src/core/hle/svc.cpp +++ b/src/core/hle/svc.cpp @@ -344,6 +344,10 @@ static void SleepThread(s64 nanoseconds) { // Sleep current thread and check for next thread to schedule Kernel::WaitCurrentThread(WAITTYPE_SLEEP); + + // Create an event to wake the thread up after the specified nanosecond delay has passed + Kernel::WakeThreadAfterDelay(Kernel::GetCurrentThreadHandle(), nanoseconds); + HLE::Reschedule(__func__); } |
