diff options
author | bunnei <bunneidev@gmail.com> | 2019-04-18 03:46:46 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-18 03:46:46 +0200 |
commit | 83b830eb2f80de8073a7304ab6270621d062d0b2 (patch) | |
tree | 40c965879105facd5deb0c65262d993ddbf6c30f /src/core/hle/kernel/svc.cpp | |
parent | Merge pull request #2318 from ReinUsesLisp/sampler-cache (diff) | |
parent | svc: Specify handle value in thread's name (diff) | |
download | yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar.gz yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar.bz2 yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar.lz yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar.xz yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.tar.zst yuzu-83b830eb2f80de8073a7304ab6270621d062d0b2.zip |
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
-rw-r--r-- | src/core/hle/kernel/svc.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index d48a2203a..4eeb97bef 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp @@ -1380,20 +1380,22 @@ static ResultCode CreateThread(Core::System& system, Handle* out_handle, VAddr e return ERR_INVALID_THREAD_PRIORITY; } - const std::string name = fmt::format("thread-{:X}", entry_point); auto& kernel = system.Kernel(); CASCADE_RESULT(SharedPtr<Thread> thread, - Thread::Create(kernel, name, entry_point, priority, arg, processor_id, stack_top, + Thread::Create(kernel, "", entry_point, priority, arg, processor_id, stack_top, *current_process)); - const auto new_guest_handle = current_process->GetHandleTable().Create(thread); - if (new_guest_handle.Failed()) { + const auto new_thread_handle = current_process->GetHandleTable().Create(thread); + if (new_thread_handle.Failed()) { LOG_ERROR(Kernel_SVC, "Failed to create handle with error=0x{:X}", - new_guest_handle.Code().raw); - return new_guest_handle.Code(); + new_thread_handle.Code().raw); + return new_thread_handle.Code(); } - thread->SetGuestHandle(*new_guest_handle); - *out_handle = *new_guest_handle; + *out_handle = *new_thread_handle; + + // Set the thread name for debugging purposes. + thread->SetName( + fmt::format("thread[entry_point={:X}, handle={:X}]", entry_point, *new_thread_handle)); system.CpuCore(thread->GetProcessorID()).PrepareReschedule(); |