summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2022-03-11 00:09:01 -0800
committerbunnei <bunneidev@gmail.com>2022-03-14 18:14:53 -0700
commit8873c0c3db377b54dd5ae36f55543ec12bdefb96 (patch)
treef318732626585d2fe4687e633e6105750ff9c4f4 /src
parent25c0acc388c17ef0c16b409735ece62e4295b807 (diff)
core: hle: service: sm: Fix KPort reference count.
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/sm/sm.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/core/hle/service/sm/sm.cpp b/src/core/hle/service/sm/sm.cpp
index eaa172595..695a1faa6 100644
--- a/src/core/hle/service/sm/sm.cpp
+++ b/src/core/hle/service/sm/sm.cpp
@@ -81,6 +81,8 @@ ResultVal<Kernel::KPort*> ServiceManager::GetServicePort(const std::string& name
}
auto* port = Kernel::KPort::Create(kernel);
+ SCOPE_EXIT({ port->Close(); });
+
port->Initialize(ServerSessionCountMax, false, name);
auto handler = it->second;
port->GetServerPort().SetSessionHandler(std::move(handler));