summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/kernel/k_client_port.cpp2
-rw-r--r--src/core/hle/service/sm/sm.cpp8
2 files changed, 5 insertions, 5 deletions
diff --git a/src/core/hle/kernel/k_client_port.cpp b/src/core/hle/kernel/k_client_port.cpp
index 50606bd91..bcb884e8a 100644
--- a/src/core/hle/kernel/k_client_port.cpp
+++ b/src/core/hle/kernel/k_client_port.cpp
@@ -66,7 +66,7 @@ ResultCode KClientPort::CreateSession(KClientSession** out,
66 // Update the session counts. 66 // Update the session counts.
67 { 67 {
68 // Atomically increment the number of sessions. 68 // Atomically increment the number of sessions.
69 s32 new_sessions; 69 s32 new_sessions{};
70 { 70 {
71 const auto max = max_sessions; 71 const auto max = max_sessions;
72 auto cur_sessions = num_sessions.load(std::memory_order_acquire); 72 auto cur_sessions = num_sessions.load(std::memory_order_acquire);
diff --git a/src/core/hle/service/sm/sm.cpp b/src/core/hle/service/sm/sm.cpp
index bffa9ffcb..a1e1a7d76 100644
--- a/src/core/hle/service/sm/sm.cpp
+++ b/src/core/hle/service/sm/sm.cpp
@@ -164,18 +164,18 @@ ResultVal<Kernel::KClientSession*> SM::GetServiceImpl(Kernel::HLERequestContext&
164 R_UNLESS(session_reservation.Succeeded(), Kernel::ResultLimitReached); 164 R_UNLESS(session_reservation.Succeeded(), Kernel::ResultLimitReached);
165 165
166 // Create a new session. 166 // Create a new session.
167 auto* session = Kernel::KSession::Create(kernel); 167 Kernel::KClientSession* session{};
168 session->Initialize(&port->GetClientPort(), std::move(name)); 168 port->GetClientPort().CreateSession(std::addressof(session));
169 169
170 // Commit the session reservation. 170 // Commit the session reservation.
171 session_reservation.Commit(); 171 session_reservation.Commit();
172 172
173 // Enqueue the session with the named port. 173 // Enqueue the session with the named port.
174 port->EnqueueSession(&session->GetServerSession()); 174 port->EnqueueSession(&session->GetParent()->GetServerSession());
175 175
176 LOG_DEBUG(Service_SM, "called service={} -> session={}", name, session->GetId()); 176 LOG_DEBUG(Service_SM, "called service={} -> session={}", name, session->GetId());
177 177
178 return MakeResult(&session->GetClientSession()); 178 return MakeResult(session);
179} 179}
180 180
181void SM::RegisterService(Kernel::HLERequestContext& ctx) { 181void SM::RegisterService(Kernel::HLERequestContext& ctx) {