summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/kernel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/kernel/kernel.cpp')
-rw-r--r--src/core/hle/kernel/kernel.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp
index 7902c2882..3e0800a71 100644
--- a/src/core/hle/kernel/kernel.cpp
+++ b/src/core/hle/kernel/kernel.cpp
@@ -116,6 +116,7 @@ struct KernelCore::Impl {
116 next_thread_id = 1; 116 next_thread_id = 1;
117 117
118 process_list.clear(); 118 process_list.clear();
119 current_process.reset();
119 120
120 handle_table.Clear(); 121 handle_table.Clear();
121 resource_limits.fill(nullptr); 122 resource_limits.fill(nullptr);
@@ -206,6 +207,7 @@ struct KernelCore::Impl {
206 207
207 // Lists all processes that exist in the current session. 208 // Lists all processes that exist in the current session.
208 std::vector<SharedPtr<Process>> process_list; 209 std::vector<SharedPtr<Process>> process_list;
210 SharedPtr<Process> current_process;
209 211
210 Kernel::HandleTable handle_table; 212 Kernel::HandleTable handle_table;
211 std::array<SharedPtr<ResourceLimit>, 4> resource_limits; 213 std::array<SharedPtr<ResourceLimit>, 4> resource_limits;
@@ -264,6 +266,18 @@ void KernelCore::AppendNewProcess(SharedPtr<Process> process) {
264 impl->process_list.push_back(std::move(process)); 266 impl->process_list.push_back(std::move(process));
265} 267}
266 268
269void KernelCore::MakeCurrentProcess(SharedPtr<Process> process) {
270 impl->current_process = std::move(process);
271}
272
273SharedPtr<Process>& KernelCore::CurrentProcess() {
274 return impl->current_process;
275}
276
277const SharedPtr<Process>& KernelCore::CurrentProcess() const {
278 return impl->current_process;
279}
280
267void KernelCore::AddNamedPort(std::string name, SharedPtr<ClientPort> port) { 281void KernelCore::AddNamedPort(std::string name, SharedPtr<ClientPort> port) {
268 impl->named_ports.emplace(std::move(name), std::move(port)); 282 impl->named_ports.emplace(std::move(name), std::move(port));
269} 283}