From 25c010dc7dda010175da42e1184e87cd1a45cbe4 Mon Sep 17 00:00:00 2001 From: Subv Date: Mon, 11 May 2015 18:23:45 -0500 Subject: fixup! --- src/core/hle/kernel/kernel.cpp | 4 +++- src/core/hle/kernel/process.h | 6 ------ src/core/hle/svc.cpp | 18 +++++++++--------- 3 files changed, 12 insertions(+), 16 deletions(-) (limited to 'src/core') diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index 87a0dbe3..b5c98b24 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -137,8 +137,10 @@ void Init() { Kernel::ThreadingInit(); Kernel::TimersInit(); - Process::next_process_id = 0; Object::next_object_id = 0; + // TODO(Subv): Start the process ids from 10 for now, as lower PIDs are + // reserved for low-level services + Process::next_process_id = 10; } /// Shutdown the kernel diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h index 11c2ad12..22cd1049 100644 --- a/src/core/hle/kernel/process.h +++ b/src/core/hle/kernel/process.h @@ -57,12 +57,6 @@ public: static u32 next_process_id; - /* - * Gets the process' id - * @returns The process' id - */ - u32 GetProcessId() const { return process_id; } - /// Name of the process std::string name; /// Title ID corresponding to the process diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp index b5cf554c..e8159fbd 100644 --- a/src/core/hle/svc.cpp +++ b/src/core/hle/svc.cpp @@ -426,28 +426,28 @@ static ResultCode ReleaseMutex(Handle handle) { } /// Get the ID of the specified process -static ResultCode GetProcessId(u32* process_id, Handle handle) { - LOG_TRACE(Kernel_SVC, "called process=0x%08X", handle); +static ResultCode GetProcessId(u32* process_id, Handle process_handle) { + LOG_TRACE(Kernel_SVC, "called process=0x%08X", process_handle); - const SharedPtr process = Kernel::g_handle_table.Get(handle); + const SharedPtr process = Kernel::g_handle_table.Get(process_handle); if (process == nullptr) return ERR_INVALID_HANDLE; - *process_id = process->GetProcessId(); + *process_id = process->process_id; return RESULT_SUCCESS; } /// Get the ID of the process that owns the specified thread -static ResultCode GetProcessIdOfThread(u32* process_id, Handle handle) { - LOG_TRACE(Kernel_SVC, "called thread=0x%08X", handle); +static ResultCode GetProcessIdOfThread(u32* process_id, Handle thread_handle) { + LOG_TRACE(Kernel_SVC, "called thread=0x%08X", thread_handle); - const SharedPtr thread = Kernel::g_handle_table.Get(handle); + const SharedPtr thread = Kernel::g_handle_table.Get(thread_handle); if (thread == nullptr) return ERR_INVALID_HANDLE; const SharedPtr process = thread->owner_process; - if (process == nullptr) - return ERR_INVALID_HANDLE; + + ASSERT_MSG(process != nullptr, "Invalid parent process for thread=0x%08X", thread_handle); *process_id = process->process_id; return RESULT_SUCCESS; -- cgit v1.2.3