diff --git a/src/core/hle/kernel/readable_event.cpp b/src/core/hle/kernel/readable_event.cpp index 7c291b4266..d8ac97aa10 100644 --- a/src/core/hle/kernel/readable_event.cpp +++ b/src/core/hle/kernel/readable_event.cpp @@ -23,8 +23,10 @@ void ReadableEvent::Acquire(Thread* thread) { } void ReadableEvent::Signal() { - signaled = true; - WakeupAllWaitingThreads(); + if (!signaled) { + signaled = true; + WakeupAllWaitingThreads(); + }; } void ReadableEvent::Clear() {