summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/kernel/k_server_session.h4
-rw-r--r--src/core/hle/kernel/service_thread.cpp2
-rw-r--r--src/core/hle/service/sm/sm_controller.cpp5
3 files changed, 6 insertions, 5 deletions
diff --git a/src/core/hle/kernel/k_server_session.h b/src/core/hle/kernel/k_server_session.h
index e4698d3f5..6e189af8b 100644
--- a/src/core/hle/kernel/k_server_session.h
+++ b/src/core/hle/kernel/k_server_session.h
@@ -55,6 +55,10 @@ public:
55 Result ReceiveRequest(std::shared_ptr<HLERequestContext>* out_context = nullptr, 55 Result ReceiveRequest(std::shared_ptr<HLERequestContext>* out_context = nullptr,
56 std::weak_ptr<SessionRequestManager> manager = {}); 56 std::weak_ptr<SessionRequestManager> manager = {});
57 57
58 Result SendReplyHLE() {
59 return SendReply(true);
60 }
61
58private: 62private:
59 /// Frees up waiting client sessions when this server session is about to die 63 /// Frees up waiting client sessions when this server session is about to die
60 void CleanupRequests(); 64 void CleanupRequests();
diff --git a/src/core/hle/kernel/service_thread.cpp b/src/core/hle/kernel/service_thread.cpp
index 1d8775504..c8fe42537 100644
--- a/src/core/hle/kernel/service_thread.cpp
+++ b/src/core/hle/kernel/service_thread.cpp
@@ -103,7 +103,7 @@ void ServiceThread::Impl::WaitAndProcessImpl() {
103 Result service_rc = manager->CompleteSyncRequest(server_session, *context); 103 Result service_rc = manager->CompleteSyncRequest(server_session, *context);
104 104
105 // Reply to the client. 105 // Reply to the client.
106 rc = server_session->SendReply(true); 106 rc = server_session->SendReplyHLE();
107 107
108 if (rc == ResultSessionClosed || service_rc == IPC::ERR_REMOTE_PROCESS_DEAD) { 108 if (rc == ResultSessionClosed || service_rc == IPC::ERR_REMOTE_PROCESS_DEAD) {
109 SessionClosed(server_session, manager); 109 SessionClosed(server_session, manager);
diff --git a/src/core/hle/service/sm/sm_controller.cpp b/src/core/hle/service/sm/sm_controller.cpp
index 940c33478..69e0fe808 100644
--- a/src/core/hle/service/sm/sm_controller.cpp
+++ b/src/core/hle/service/sm/sm_controller.cpp
@@ -33,16 +33,13 @@ void Controller::CloneCurrentObject(Kernel::HLERequestContext& ctx) {
33 // FIXME: this is duplicated from the SVC, it should just call it instead 33 // FIXME: this is duplicated from the SVC, it should just call it instead
34 // once this is a proper process 34 // once this is a proper process
35 35
36 // Declare the session we're going to allocate.
37 Kernel::KSession* session;
38
39 // Reserve a new session from the process resource limit. 36 // Reserve a new session from the process resource limit.
40 Kernel::KScopedResourceReservation session_reservation(&process, 37 Kernel::KScopedResourceReservation session_reservation(&process,
41 Kernel::LimitableResource::Sessions); 38 Kernel::LimitableResource::Sessions);
42 ASSERT(session_reservation.Succeeded()); 39 ASSERT(session_reservation.Succeeded());
43 40
44 // Create the session. 41 // Create the session.
45 session = Kernel::KSession::Create(system.Kernel()); 42 Kernel::KSession* session = Kernel::KSession::Create(system.Kernel());
46 ASSERT(session != nullptr); 43 ASSERT(session != nullptr);
47 44
48 // Initialize the session. 45 // Initialize the session.