diff options
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index 4aca5b27d..8d2c7d6b7 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -24,6 +24,7 @@ | |||
| 24 | #include "core/hle/kernel/k_memory_block.h" | 24 | #include "core/hle/kernel/k_memory_block.h" |
| 25 | #include "core/hle/kernel/k_memory_layout.h" | 25 | #include "core/hle/kernel/k_memory_layout.h" |
| 26 | #include "core/hle/kernel/k_page_table.h" | 26 | #include "core/hle/kernel/k_page_table.h" |
| 27 | #include "core/hle/kernel/k_port.h" | ||
| 27 | #include "core/hle/kernel/k_process.h" | 28 | #include "core/hle/kernel/k_process.h" |
| 28 | #include "core/hle/kernel/k_readable_event.h" | 29 | #include "core/hle/kernel/k_readable_event.h" |
| 29 | #include "core/hle/kernel/k_resource_limit.h" | 30 | #include "core/hle/kernel/k_resource_limit.h" |
| @@ -382,10 +383,11 @@ static Result ConnectToNamedPort(Core::System& system, Handle* out, VAddr port_n | |||
| 382 | 383 | ||
| 383 | // Create a session. | 384 | // Create a session. |
| 384 | KClientSession* session{}; | 385 | KClientSession* session{}; |
| 385 | R_TRY(port->CreateSession(std::addressof(session), | 386 | R_TRY(port->CreateSession(std::addressof(session))); |
| 386 | std::make_shared<SessionRequestManager>(kernel))); | ||
| 387 | port->Close(); | 387 | port->Close(); |
| 388 | 388 | ||
| 389 | kernel.RegisterNamedServiceHandler(port_name, &port->GetParent()->GetServerPort()); | ||
| 390 | |||
| 389 | // Register the session in the table, close the extra reference. | 391 | // Register the session in the table, close the extra reference. |
| 390 | handle_table.Register(*out, session); | 392 | handle_table.Register(*out, session); |
| 391 | session->Close(); | 393 | session->Close(); |