summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/client_port.cpp
diff options
context:
space:
mode:
authorSubv <subv2112@gmail.com>2017-01-05 05:23:17 +0100
committerSubv <subv2112@gmail.com>2017-05-15 18:22:15 +0200
commitddfabf31330c0c8e0558a714b6d7e1f1948b73ed (patch)
tree62c525537f603fe85f494f9fb6e622ffcd2afda9 /src/core/hle/kernel/client_port.cpp
parentMerge pull request #2659 from MerryMage/dsp_dsp-correction (diff)
downloadyuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar.gz
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar.bz2
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar.lz
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar.xz
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.tar.zst
yuzu-ddfabf31330c0c8e0558a714b6d7e1f1948b73ed.zip
Diffstat (limited to 'src/core/hle/kernel/client_port.cpp')
-rw-r--r--src/core/hle/kernel/client_port.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/core/hle/kernel/client_port.cpp b/src/core/hle/kernel/client_port.cpp
index 22645f4ec..ddcf4c916 100644
--- a/src/core/hle/kernel/client_port.cpp
+++ b/src/core/hle/kernel/client_port.cpp
@@ -19,24 +19,21 @@ ResultVal<SharedPtr<ClientSession>> ClientPort::Connect() {
// AcceptSession before returning from this call.
if (active_sessions >= max_sessions) {
- // TODO(Subv): Return an error code in this situation after session disconnection is
- // implemented.
- /*return ResultCode(ErrorDescription::MaxConnectionsReached,
- ErrorModule::OS, ErrorSummary::WouldBlock,
- ErrorLevel::Temporary);*/
+ return ResultCode(ErrorDescription::MaxConnectionsReached, ErrorModule::OS,
+ ErrorSummary::WouldBlock, ErrorLevel::Temporary);
}
active_sessions++;
// Create a new session pair, let the created sessions inherit the parent port's HLE handler.
auto sessions =
- ServerSession::CreateSessionPair(server_port->GetName(), server_port->hle_handler);
+ ServerSession::CreateSessionPair(server_port->GetName(), server_port->hle_handler, this);
auto client_session = std::get<SharedPtr<ClientSession>>(sessions);
auto server_session = std::get<SharedPtr<ServerSession>>(sessions);
if (server_port->hle_handler)
server_port->hle_handler->ClientConnected(server_session);
-
- server_port->pending_sessions.push_back(std::move(server_session));
+ else
+ server_port->pending_sessions.push_back(std::move(server_session));
// Wake the threads waiting on the ServerPort
server_port->WakeupAllWaitingThreads();