|
|
|
@ -91,12 +91,6 @@ struct KernelCore::Impl { |
|
|
|
} |
|
|
|
|
|
|
|
void Shutdown() { |
|
|
|
// Shutdown all processes.
|
|
|
|
if (current_process) { |
|
|
|
current_process->Finalize(); |
|
|
|
current_process->Close(); |
|
|
|
current_process = nullptr; |
|
|
|
} |
|
|
|
process_list.clear(); |
|
|
|
|
|
|
|
// Close all open server ports.
|
|
|
|
@ -181,6 +175,13 @@ struct KernelCore::Impl { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// Shutdown all processes.
|
|
|
|
if (current_process) { |
|
|
|
current_process->Finalize(); |
|
|
|
current_process->Close(); |
|
|
|
current_process = nullptr; |
|
|
|
} |
|
|
|
|
|
|
|
// Track kernel objects that were not freed on shutdown
|
|
|
|
{ |
|
|
|
std::lock_guard lk(registered_objects_lock); |
|
|
|
|