diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/kernel/k_client_port.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/sm/sm.cpp | 8 |
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 | ||
| 181 | void SM::RegisterService(Kernel::HLERequestContext& ctx) { | 181 | void SM::RegisterService(Kernel::HLERequestContext& ctx) { |