diff options
| author | Zach Hilman <zachhilman@gmail.com> | 2018-11-29 09:14:12 -0500 |
|---|---|---|
| committer | Zach Hilman <zachhilman@gmail.com> | 2018-11-29 09:14:20 -0500 |
| commit | 170d7078507745fee4c8952aa5888108b2b76b91 (patch) | |
| tree | 6bc3c4cbbe36518a7e9b8e62a6b4042cb420861e /src/core/hle/kernel/hle_ipc.cpp | |
| parent | a342bcc9b130e9bd78720e09e04c92dcac8840d0 (diff) | |
hle_ipc: Refactor SleepClientThread to avoid ReadableEvent
Diffstat (limited to 'src/core/hle/kernel/hle_ipc.cpp')
| -rw-r--r-- | src/core/hle/kernel/hle_ipc.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/hle/kernel/hle_ipc.cpp b/src/core/hle/kernel/hle_ipc.cpp index 21fda42d6..61ce7d7e4 100644 --- a/src/core/hle/kernel/hle_ipc.cpp +++ b/src/core/hle/kernel/hle_ipc.cpp @@ -39,7 +39,7 @@ void SessionRequestHandler::ClientDisconnected(const SharedPtr<ServerSession>& s SharedPtr<WritableEvent> HLERequestContext::SleepClientThread( SharedPtr<Thread> thread, const std::string& reason, u64 timeout, WakeupCallback&& callback, - SharedPtr<WritableEvent> writable_event, SharedPtr<ReadableEvent> readable_event) { + SharedPtr<WritableEvent> writable_event) { // Put the client thread to sleep until the wait event is signaled or the timeout expires. thread->SetWakeupCallback([context = *this, callback]( ThreadWakeupReason reason, SharedPtr<Thread> thread, @@ -51,14 +51,14 @@ SharedPtr<WritableEvent> HLERequestContext::SleepClientThread( }); auto& kernel = Core::System::GetInstance().Kernel(); - if (!writable_event || !readable_event) { + if (!writable_event) { // Create event if not provided const auto pair = WritableEvent::CreateEventPair(kernel, Kernel::ResetType::OneShot, "HLE Pause Event: " + reason); writable_event = pair.writable; - readable_event = pair.readable; } + const auto readable_event{writable_event->GetReadableEvent()}; writable_event->Clear(); thread->SetStatus(ThreadStatus::WaitHLEEvent); thread->SetWaitObjects({readable_event}); |
