diff options
| author | bunnei <bunneidev@gmail.com> | 2022-04-12 14:01:40 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-12 14:01:40 -0700 |
| commit | ca2accfb259b948431ec174ead432778f3c86f67 (patch) | |
| tree | f3729b67e09270683a948f48169185c2360cc4af /src/core/hle/service | |
| parent | dc2dd5d5a6a7f60cf12788af6ae92f51cb8e5c0a (diff) | |
| parent | a7f73d606f596ab73cf794a76c06cd955033cada (diff) | |
Merge pull request #8165 from bunnei/ensure-session-port-cleanup
Kernel: Track open references to KServerPort and KServerSession.
Diffstat (limited to 'src/core/hle/service')
| -rw-r--r-- | src/core/hle/service/sm/sm.cpp | 8 | ||||
| -rw-r--r-- | src/core/hle/service/sm/sm.h | 2 |
2 files changed, 2 insertions, 8 deletions
diff --git a/src/core/hle/service/sm/sm.cpp b/src/core/hle/service/sm/sm.cpp index 97f895852..13f5e08ec 100644 --- a/src/core/hle/service/sm/sm.cpp +++ b/src/core/hle/service/sm/sm.cpp @@ -153,7 +153,7 @@ ResultVal<Kernel::KClientSession*> SM::GetServiceImpl(Kernel::HLERequestContext& auto& port = port_result.Unwrap(); SCOPE_EXIT({ port->GetClientPort().Close(); }); - server_ports.emplace_back(&port->GetServerPort()); + kernel.RegisterServerObject(&port->GetServerPort()); // Create a new session. Kernel::KClientSession* session{}; @@ -224,10 +224,6 @@ SM::SM(ServiceManager& service_manager_, Core::System& system_) }); } -SM::~SM() { - for (auto& server_port : server_ports) { - server_port->Close(); - } -} +SM::~SM() = default; } // namespace Service::SM diff --git a/src/core/hle/service/sm/sm.h b/src/core/hle/service/sm/sm.h index 021eb51b4..f3ff7b27e 100644 --- a/src/core/hle/service/sm/sm.h +++ b/src/core/hle/service/sm/sm.h @@ -22,7 +22,6 @@ class KClientPort; class KClientSession; class KernelCore; class KPort; -class KServerPort; class SessionRequestHandler; } // namespace Kernel @@ -48,7 +47,6 @@ private: ServiceManager& service_manager; bool is_initialized{}; Kernel::KernelCore& kernel; - std::vector<Kernel::KServerPort*> server_ports; }; class ServiceManager { |
