aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/svc.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2017-12-31 17:23:36 -0500
committerbunnei <bunneidev@gmail.com>2017-12-31 17:23:36 -0500
commit57d3544f96ef407df2229f469a741b73a45b0d88 (patch)
tree8e1045990a52e489b6e7441aca8c68893959d6e7 /src/core/hle/svc.cpp
parenta373ba43e450b8c54ce4b56389da79c86e6a13f5 (diff)
thread: Keep track of the initially created handle.
This is kinda crufty, but we need it for now to update guest state variables.
Diffstat (limited to 'src/core/hle/svc.cpp')
-rw-r--r--src/core/hle/svc.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp
index bffa18c392..133b868f2e 100644
--- a/src/core/hle/svc.cpp
+++ b/src/core/hle/svc.cpp
@@ -268,7 +268,8 @@ static ResultCode CreateThread(Handle* out_handle, VAddr entry_point, u64 arg, V
thread->context.fpscr =
FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO; // 0x03C00000
- CASCADE_RESULT(*out_handle, Kernel::g_handle_table.Create(std::move(thread)));
+ CASCADE_RESULT(thread->guest_handle, Kernel::g_handle_table.Create(thread));
+ *out_handle = thread->guest_handle;
Core::System::GetInstance().PrepareReschedule();