diff options
author | bunnei <bunneidev@gmail.com> | 2021-04-22 06:43:25 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2021-05-06 01:40:52 +0200 |
commit | 0297448fbc6bf909b0bc061723c38208b9667b66 (patch) | |
tree | 7c21303536466b0a76331e4274ecb3e12eb40421 /src/core/hle/kernel/kernel.cpp | |
parent | hle: kernel: HandleTable: Remove deprecated APIs. (diff) | |
download | yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar.gz yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar.bz2 yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar.lz yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar.xz yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.tar.zst yuzu-0297448fbc6bf909b0bc061723c38208b9667b66.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index ada993f46..c939bb903 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -26,9 +26,9 @@ #include "core/cpu_manager.h" #include "core/device_memory.h" #include "core/hardware_properties.h" -#include "core/hle/kernel/client_port.h" #include "core/hle/kernel/handle_table.h" #include "core/hle/kernel/init/init_slab_setup.h" +#include "core/hle/kernel/k_client_port.h" #include "core/hle/kernel/k_memory_layout.h" #include "core/hle/kernel/k_memory_manager.h" #include "core/hle/kernel/k_resource_limit.h" @@ -122,6 +122,9 @@ struct KernelCore::Impl { preemption_event = nullptr; + for (auto& iter : named_ports) { + iter.second->Close(); + } named_ports.clear(); exclusive_monitor.reset(); @@ -843,8 +846,9 @@ void KernelCore::PrepareReschedule(std::size_t id) { // TODO: Reimplement, this } -void KernelCore::AddNamedPort(std::string name, std::shared_ptr<ClientPort> port) { - impl->named_ports.emplace(std::move(name), std::move(port)); +void KernelCore::AddNamedPort(std::string name, KClientPort* port) { + port->Open(); + impl->named_ports.emplace(std::move(name), port); } KernelCore::NamedPortTable::iterator KernelCore::FindNamedPort(const std::string& name) { |