diff options
Diffstat (limited to 'src/core/hle/service/service.cpp')
| -rw-r--r-- | src/core/hle/service/service.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp index 3d5e3058c..6ea5cf745 100644 --- a/src/core/hle/service/service.cpp +++ b/src/core/hle/service/service.cpp | |||
| @@ -84,6 +84,9 @@ ResultCode SessionRequestHandler::TranslateRequest(Kernel::SharedPtr<Kernel::Ser | |||
| 84 | return RESULT_SUCCESS; | 84 | return RESULT_SUCCESS; |
| 85 | } | 85 | } |
| 86 | 86 | ||
| 87 | Interface::~Interface() = default; | ||
| 88 | Interface::Interface(u32 max_sessions) : max_sessions(max_sessions) { } | ||
| 89 | |||
| 87 | void Interface::HandleSyncRequestImpl(Kernel::SharedPtr<Kernel::ServerSession> server_session) { | 90 | void Interface::HandleSyncRequestImpl(Kernel::SharedPtr<Kernel::ServerSession> server_session) { |
| 88 | // TODO(Subv): Make use of the server_session in the HLE service handlers to distinguish which session triggered each command. | 91 | // TODO(Subv): Make use of the server_session in the HLE service handlers to distinguish which session triggered each command. |
| 89 | 92 | ||
| @@ -123,14 +126,14 @@ static void AddNamedPort(Interface* interface_) { | |||
| 123 | auto ports = Kernel::ServerPort::CreatePortPair(interface_->GetMaxSessions(), interface_->GetPortName(), | 126 | auto ports = Kernel::ServerPort::CreatePortPair(interface_->GetMaxSessions(), interface_->GetPortName(), |
| 124 | std::shared_ptr<Interface>(interface_)); | 127 | std::shared_ptr<Interface>(interface_)); |
| 125 | auto client_port = std::get<Kernel::SharedPtr<Kernel::ClientPort>>(ports); | 128 | auto client_port = std::get<Kernel::SharedPtr<Kernel::ClientPort>>(ports); |
| 126 | g_kernel_named_ports.emplace(interface_->GetPortName(), client_port); | 129 | g_kernel_named_ports.emplace(interface_->GetPortName(), std::move(client_port)); |
| 127 | } | 130 | } |
| 128 | 131 | ||
| 129 | void AddService(Interface* interface_) { | 132 | void AddService(Interface* interface_) { |
| 130 | auto ports = Kernel::ServerPort::CreatePortPair(interface_->GetMaxSessions(), interface_->GetPortName(), | 133 | auto ports = Kernel::ServerPort::CreatePortPair(interface_->GetMaxSessions(), interface_->GetPortName(), |
| 131 | std::shared_ptr<Interface>(interface_)); | 134 | std::shared_ptr<Interface>(interface_)); |
| 132 | auto client_port = std::get<Kernel::SharedPtr<Kernel::ClientPort>>(ports); | 135 | auto client_port = std::get<Kernel::SharedPtr<Kernel::ClientPort>>(ports); |
| 133 | g_srv_services.emplace(interface_->GetPortName(), client_port); | 136 | g_srv_services.emplace(interface_->GetPortName(), std::move(client_port)); |
| 134 | } | 137 | } |
| 135 | 138 | ||
| 136 | /// Initialize ServiceManager | 139 | /// Initialize ServiceManager |