aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/sm/sm.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2022-10-31 11:18:17 -0700
committerGitHub <noreply@github.com>2022-10-31 11:18:17 -0700
commit7f0d0dd17773f1f6c865907bc6c95e0630e3b886 (patch)
tree30d1cd85ba80d425b8c6e881b24c87efe1789e8c /src/core/hle/service/sm/sm.cpp
parentf39d2cf78b7e77ae220f9b1b36ea43243b8aadc6 (diff)
parent4e9adae5da95219b85f11309919944bc07c4043d (diff)
Merge pull request #9159 from liamwhite/kbork
kernel: more complete fix for KPort reference counting
Diffstat (limited to 'src/core/hle/service/sm/sm.cpp')
-rw-r--r--src/core/hle/service/sm/sm.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/hle/service/sm/sm.cpp b/src/core/hle/service/sm/sm.cpp
index e2b8d8720..cb6c0e96f 100644
--- a/src/core/hle/service/sm/sm.cpp
+++ b/src/core/hle/service/sm/sm.cpp
@@ -149,9 +149,10 @@ ResultVal<Kernel::KClientSession*> SM::GetServiceImpl(Kernel::HLERequestContext&
return port_result.Code();
}
auto& port = port_result.Unwrap();
- SCOPE_EXIT({ port->GetClientPort().Close(); });
-
- kernel.RegisterServerObject(&port->GetServerPort());
+ SCOPE_EXIT({
+ port->GetClientPort().Close();
+ port->GetServerPort().Close();
+ });
// Create a new session.
Kernel::KClientSession* session{};