summaryrefslogtreecommitdiff
path: root/src/core/hle/service/service.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/service.cpp')
-rw-r--r--src/core/hle/service/service.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp
index abfc1806b..56e4f8734 100644
--- a/src/core/hle/service/service.cpp
+++ b/src/core/hle/service/service.cpp
@@ -61,7 +61,9 @@ static std::string MakeFunctionString(const char* name, const char* port_name,
61 return function_string; 61 return function_string;
62} 62}
63 63
64ResultCode Interface::HandleSyncRequest() { 64ResultCode Interface::HandleSyncRequest(Kernel::SharedPtr<Kernel::ServerSession> server_session) {
65 // TODO(Subv): Make use of the server_session in the HLE service handlers to distinguish which session triggered each command.
66
65 u32* cmd_buff = Kernel::GetCommandBuffer(); 67 u32* cmd_buff = Kernel::GetCommandBuffer();
66 auto itr = m_functions.find(cmd_buff[0]); 68 auto itr = m_functions.find(cmd_buff[0]);
67 69
@@ -97,12 +99,12 @@ void Interface::Register(const FunctionInfo* functions, size_t n) {
97// Module interface 99// Module interface
98 100
99static void AddNamedPort(Interface* interface_) { 101static void AddNamedPort(Interface* interface_) {
100 auto client_port = Kernel::ClientPort::CreateForHLE(interface_->GetMaxSessions(), std::unique_ptr<Interface>(interface_)); 102 auto client_port = Kernel::ClientPort::CreateForHLE(interface_->GetMaxSessions(), std::shared_ptr<Interface>(interface_));
101 g_kernel_named_ports.emplace(interface_->GetPortName(), client_port); 103 g_kernel_named_ports.emplace(interface_->GetPortName(), client_port);
102} 104}
103 105
104void AddService(Interface* interface_) { 106void AddService(Interface* interface_) {
105 auto client_port = Kernel::ClientPort::CreateForHLE(interface_->GetMaxSessions(), std::unique_ptr<Interface>(interface_)); 107 auto client_port = Kernel::ClientPort::CreateForHLE(interface_->GetMaxSessions(), std::shared_ptr<Interface>(interface_));
106 g_srv_services.emplace(interface_->GetPortName(), client_port); 108 g_srv_services.emplace(interface_->GetPortName(), client_port);
107} 109}
108 110