diff options
| author | bunnei <bunneidev@gmail.com> | 2020-12-21 22:36:53 -0800 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2021-01-11 14:23:16 -0800 |
| commit | 2feb4d56e955cb5c4e53fdac474a8d684d7fe45d (patch) | |
| tree | 572c0b6a47a249a78d658122de32908262ec6a69 /src/core/hle/kernel/server_port.cpp | |
| parent | eafd021b1499bd24229a80f66505d301b2b362a1 (diff) | |
core: hle: kernel: Update KSynchronizationObject.
Diffstat (limited to 'src/core/hle/kernel/server_port.cpp')
| -rw-r--r-- | src/core/hle/kernel/server_port.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/core/hle/kernel/server_port.cpp b/src/core/hle/kernel/server_port.cpp index a549ae9d77..82857f93b3 100644 --- a/src/core/hle/kernel/server_port.cpp +++ b/src/core/hle/kernel/server_port.cpp @@ -13,7 +13,7 @@ namespace Kernel { -ServerPort::ServerPort(KernelCore& kernel) : SynchronizationObject{kernel} {} +ServerPort::ServerPort(KernelCore& kernel) : KSynchronizationObject{kernel} {} ServerPort::~ServerPort() = default; ResultVal<std::shared_ptr<ServerSession>> ServerPort::Accept() { @@ -28,15 +28,9 @@ ResultVal<std::shared_ptr<ServerSession>> ServerPort::Accept() { void ServerPort::AppendPendingSession(std::shared_ptr<ServerSession> pending_session) { pending_sessions.push_back(std::move(pending_session)); -} - -bool ServerPort::ShouldWait(const Thread* thread) const { - // If there are no pending sessions, we wait until a new one is added. - return pending_sessions.empty(); -} - -void ServerPort::Acquire(Thread* thread) { - ASSERT_MSG(!ShouldWait(thread), "object unavailable!"); + if (pending_sessions.size() == 1) { + NotifyAvailable(); + } } bool ServerPort::IsSignaled() const { |
