diff options
author | bunnei <bunneidev@gmail.com> | 2022-04-12 23:01:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-12 23:01:40 +0200 |
commit | ca2accfb259b948431ec174ead432778f3c86f67 (patch) | |
tree | f3729b67e09270683a948f48169185c2360cc4af /src/core/hle/kernel/hle_ipc.cpp | |
parent | Merge pull request #8178 from tech-ticks/skyline-icache-fix (diff) | |
parent | hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession. (diff) | |
download | yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar.gz yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar.bz2 yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar.lz yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar.xz yuzu-ca2accfb259b948431ec174ead432778f3c86f67.tar.zst yuzu-ca2accfb259b948431ec174ead432778f3c86f67.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/hle_ipc.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/hle/kernel/hle_ipc.cpp b/src/core/hle/kernel/hle_ipc.cpp index b547a3463..5828ac923 100644 --- a/src/core/hle/kernel/hle_ipc.cpp +++ b/src/core/hle/kernel/hle_ipc.cpp @@ -51,7 +51,7 @@ bool SessionRequestManager::HasSessionRequestHandler(const HLERequestContext& co LOG_CRITICAL(IPC, "object_id {} is too big!", object_id); return false; } - return DomainHandler(object_id - 1).lock() != nullptr; + return !DomainHandler(object_id - 1).expired(); } else { return session_handler != nullptr; } @@ -59,6 +59,9 @@ bool SessionRequestManager::HasSessionRequestHandler(const HLERequestContext& co void SessionRequestHandler::ClientConnected(KServerSession* session) { session->ClientConnected(shared_from_this()); + + // Ensure our server session is tracked globally. + kernel.RegisterServerObject(session); } void SessionRequestHandler::ClientDisconnected(KServerSession* session) { |