hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession.

- These are not managed elsewhere, and need to be tracked and closed on emulation shutdown.
This commit is contained in:
bunnei
2022-04-06 17:44:06 -07:00
parent b44a564792
commit a7f73d606f
6 changed files with 46 additions and 13 deletions

View File

@ -153,6 +153,7 @@ ResultVal<Kernel::KClientSession*> SM::GetServiceImpl(Kernel::HLERequestContext&
auto& port = port_result.Unwrap();
SCOPE_EXIT({ port->GetClientPort().Close(); });
kernel.RegisterServerObject(&port->GetServerPort());
// Create a new session.
Kernel::KClientSession* session{};