diff --git a/rpcs3/Emu/Cell/lv2/lv2.cpp b/rpcs3/Emu/Cell/lv2/lv2.cpp index 77ae5f46205c..3fc2a7d62d61 100644 --- a/rpcs3/Emu/Cell/lv2/lv2.cpp +++ b/rpcs3/Emu/Cell/lv2/lv2.cpp @@ -1046,11 +1046,12 @@ void lv2_obj::sleep_timeout(cpu_thread& thread, u64 timeout) if (it->first > wait_until) { g_waiting.emplace(it, wait_until, &thread); - return; + timeout = 0; + break; } } - g_waiting.emplace_back(wait_until, &thread); + if (timeout) g_waiting.emplace_back(wait_until, &thread); } schedule_all();