diff options
author | bunnei <bunneidev@gmail.com> | 2019-11-25 02:15:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-25 02:15:51 +0100 |
commit | 9046d4a5485452802b756869b7d27056ba9ea9d7 (patch) | |
tree | 2d704d912e9054fb232b73ad69f1bc3966ed97a5 /src/core/hle/kernel/client_session.cpp | |
parent | Merge pull request #3098 from ReinUsesLisp/shader-invalidations (diff) | |
download | yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar.gz yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar.bz2 yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar.lz yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar.xz yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.tar.zst yuzu-9046d4a5485452802b756869b7d27056ba9ea9d7.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/client_session.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/core/hle/kernel/client_session.cpp b/src/core/hle/kernel/client_session.cpp index c17baa50a..bc59d3306 100644 --- a/src/core/hle/kernel/client_session.cpp +++ b/src/core/hle/kernel/client_session.cpp @@ -16,25 +16,20 @@ ClientSession::ClientSession(KernelCore& kernel) : Object{kernel} {} ClientSession::~ClientSession() { // This destructor will be called automatically when the last ClientSession handle is closed by // the emulated application. - - // A local reference to the ServerSession is necessary to guarantee it - // will be kept alive until after ClientDisconnected() returns. - SharedPtr<ServerSession> server = parent->server; - if (server) { - server->ClientDisconnected(); + if (parent->server) { + parent->server->ClientDisconnected(); } parent->client = nullptr; } -ResultCode ClientSession::SendSyncRequest(SharedPtr<Thread> thread) { +ResultCode ClientSession::SendSyncRequest(Thread* thread) { // Keep ServerSession alive until we're done working with it. - SharedPtr<ServerSession> server = parent->server; - if (server == nullptr) + if (parent->server == nullptr) return ERR_SESSION_CLOSED_BY_REMOTE; // Signal the server session that new data is available - return server->HandleSyncRequest(std::move(thread)); + return parent->server->HandleSyncRequest(SharedFrom(thread)); } } // namespace Kernel |