summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/time_manager.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-12-13 07:43:25 +0100
committerGitHub <noreply@github.com>2021-12-13 07:43:25 +0100
commit280c77989880e81f622440b157a0ce1b7139847b (patch)
tree49a3ef8127d721dc44effb8315e5db7e796336f4 /src/core/hle/kernel/time_manager.cpp
parentMerge pull request #7495 from FernandoS27/text-blit-fix-again (diff)
parenthle: kernel k_scheduler: EnableScheduling: Remove redundant GetCurrentThreadPointer calls. (diff)
downloadyuzu-280c77989880e81f622440b157a0ce1b7139847b.tar
yuzu-280c77989880e81f622440b157a0ce1b7139847b.tar.gz
yuzu-280c77989880e81f622440b157a0ce1b7139847b.tar.bz2
yuzu-280c77989880e81f622440b157a0ce1b7139847b.tar.lz
yuzu-280c77989880e81f622440b157a0ce1b7139847b.tar.xz
yuzu-280c77989880e81f622440b157a0ce1b7139847b.tar.zst
yuzu-280c77989880e81f622440b157a0ce1b7139847b.zip
Diffstat (limited to 'src/core/hle/kernel/time_manager.cpp')
-rw-r--r--src/core/hle/kernel/time_manager.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/hle/kernel/time_manager.cpp b/src/core/hle/kernel/time_manager.cpp
index 8cd7279a3..aa985d820 100644
--- a/src/core/hle/kernel/time_manager.cpp
+++ b/src/core/hle/kernel/time_manager.cpp
@@ -5,6 +5,7 @@
#include "common/assert.h"
#include "core/core.h"
#include "core/core_timing.h"
+#include "core/hle/kernel/k_scheduler.h"
#include "core/hle/kernel/k_thread.h"
#include "core/hle/kernel/time_manager.h"
@@ -15,7 +16,10 @@ TimeManager::TimeManager(Core::System& system_) : system{system_} {
Core::Timing::CreateEvent("Kernel::TimeManagerCallback",
[this](std::uintptr_t thread_handle, std::chrono::nanoseconds) {
KThread* thread = reinterpret_cast<KThread*>(thread_handle);
- thread->Wakeup();
+ {
+ KScopedSchedulerLock sl(system.Kernel());
+ thread->OnTimer();
+ }
});
}