From 1cb978eb82253d6869d1c3729e976a98fb5a7a9c Mon Sep 17 00:00:00 2001 From: bunnei Date: Sun, 31 Dec 2017 17:23:36 -0500 Subject: thread: Keep track of the initially created handle. This is kinda crufty, but we need it for now to update guest state variables. --- src/core/hle/kernel/thread.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/core/hle/kernel/thread.cpp') diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index b20092761..1588cfc7e 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp @@ -502,7 +502,8 @@ SharedPtr SetupMainThread(VAddr entry_point, u32 priority, SharedPtr thread = std::move(thread_res).Unwrap(); // Register 1 must be a handle to the main thread - thread->context.cpu_registers[1] = Kernel::g_handle_table.Create(thread).Unwrap(); + thread->guest_handle = Kernel::g_handle_table.Create(thread).Unwrap();; + thread->context.cpu_registers[1] = thread->guest_handle; thread->context.fpscr = FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO | FPSCR_IXC; // 0x03C00010 -- cgit v1.2.3