aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei <ericbunnie@gmail.com>2014-05-20 23:36:35 -0400
committerGravatar bunnei <ericbunnie@gmail.com>2014-05-20 23:36:35 -0400
commit706584f007f48cd319fe7511969f914843951088 (patch)
treeaead6b823bfe74de7e4423b217eba963667e44a2 /src
parenteb537c560a33db9955413a96afd3b98203a729fe (diff)
svc: enabled use of newly created kernel thread handle
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/svc.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp
index ffacdfb8..6f6f5b2f 100644
--- a/src/core/hle/svc.cpp
+++ b/src/core/hle/svc.cpp
@@ -162,8 +162,7 @@ Result GetResourceLimitCurrentValues(void* _values, Handle resource_limit, void*
}
/// Creates a new thread
-Result CreateThread(void* thread, u32 priority, u32 entry_point, u32 arg, u32 stack_top,
- u32 processor_id) {
+Result CreateThread(u32 priority, u32 entry_point, u32 arg, u32 stack_top, u32 processor_id) {
std::string name;
if (Symbols::HasSymbol(entry_point)) {
TSymbol symbol = Symbols::GetSymbol(entry_point);
@@ -177,9 +176,10 @@ Result CreateThread(void* thread, u32 priority, u32 entry_point, u32 arg, u32 st
"threadpriority=0x%08X, processorid=0x%08X", entry_point, name.c_str(), arg, stack_top,
priority, processor_id);
- Handle handle = Kernel::CreateThread(name.c_str(), entry_point, priority, processor_id,
+ Handle thread = Kernel::CreateThread(name.c_str(), entry_point, priority, processor_id,
stack_top);
- Core::g_app_core->SetReg(1, 0xFEEDDEAF);
+
+ Core::g_app_core->SetReg(1, thread);
return 0;
}
@@ -231,7 +231,7 @@ const HLE::FunctionDef SVC_Table[] = {
{0x05, NULL, "SetProcessAffinityMask"},
{0x06, NULL, "GetProcessIdealProcessor"},
{0x07, NULL, "SetProcessIdealProcessor"},
- {0x08, WrapI_VUUUUU<CreateThread>, "CreateThread"},
+ {0x08, WrapI_UUUUU<CreateThread>, "CreateThread"},
{0x09, NULL, "ExitThread"},
{0x0A, NULL, "SleepThread"},
{0x0B, NULL, "GetThreadPriority"},