From 75b92ae18b784e2ed14ceaecaae5f59f38d5ff41 Mon Sep 17 00:00:00 2001 From: Fire Cube Date: Tue, 13 May 2025 20:52:21 +0200 Subject: [PATCH] run timercallback after addEvent and remove useless code --- src/core/libraries/kernel/equeue.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/core/libraries/kernel/equeue.cpp b/src/core/libraries/kernel/equeue.cpp index a1ce80f43..e28f31c01 100644 --- a/src/core/libraries/kernel/equeue.cpp +++ b/src/core/libraries/kernel/equeue.cpp @@ -364,17 +364,16 @@ int PS4_SYSV_ABI sceKernelAddTimerEvent(SceKernelEqueue eq, int id, SceKernelUse io_context, std::chrono::milliseconds(interval_ms)); KernelSignalRequest(); - std::thread([]() { io_context.run(); }).detach(); + + if (!eq->AddEvent(event)) { + return ORBIS_KERNEL_ERROR_ENOMEM; + } timer->async_wait( [eq, event_data = event.event, interval_ms, timer](const boost::system::error_code& ec) { TimerCallback(ec, eq, event_data, interval_ms); }); - if (!eq->AddEvent(event)) { - return ORBIS_KERNEL_ERROR_ENOMEM; - } - return ORBIS_OK; }