aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/svc.cpp
diff options
context:
space:
mode:
authorSubv <subv2112@gmail.com>2015-01-07 16:40:08 -0500
committerSubv <subv2112@gmail.com>2015-01-08 18:39:12 -0500
commitdfc440785af73e400e7672377bdf7f65c9eca61c (patch)
tree16981e2ec3d97455abe361bf6ebb6ef161df1c19 /src/core/hle/svc.cpp
parent91d96840ea698edaf5f2b6e8522d18f00bb18d9c (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.cpp4
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__);
}