diff options
author | bunnei <bunneidev@gmail.com> | 2021-03-05 00:13:29 -0800 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2021-03-05 17:10:57 -0800 |
commit | 47af34003b97a27ee8456cedb367b41f8687b517 (patch) | |
tree | 5e28f986f365d7f441997c3c7e5be8f61013e72b /src/core/hle/kernel/svc.cpp | |
parent | 7b29a8ce4e1f94bec7e7828fb1674e1b43b937c5 (diff) |
hle: kernel: KThread: Rework dummy threads & fix memory leak.
- Dummy threads are created on thread local storage for all host threads.
- Fixes a leak by removing creation of fibers, which are not applicable here.
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
-rw-r--r-- | src/core/hle/kernel/svc.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index cc8fa6576f..326d3b9ec5 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp @@ -1532,8 +1532,9 @@ static ResultCode CreateThread(Core::System& system, Handle* out_handle, VAddr e std::shared_ptr<KThread> thread; { KScopedLightLock lk{process.GetStateLock()}; - CASCADE_RESULT(thread, KThread::Create(system, ThreadType::User, "", entry_point, priority, - arg, core_id, stack_bottom, &process)); + CASCADE_RESULT(thread, + KThread::CreateUserThread(system, ThreadType::User, "", entry_point, + priority, arg, core_id, stack_bottom, &process)); } const auto new_thread_handle = process.GetHandleTable().Create(thread); |