diff --git a/libretro-common/queues/task_queue.c b/libretro-common/queues/task_queue.c index 714b614c77..56e9a9c46e 100644 --- a/libretro-common/queues/task_queue.c +++ b/libretro-common/queues/task_queue.c @@ -456,8 +456,6 @@ static void threaded_worker(void *userdata) retro_sleep(10); #endif } - - slock_unlock(running_lock); } static void retro_task_threaded_init(void) diff --git a/runloop.c b/runloop.c index 7ee5ee22a2..5b7782de32 100644 --- a/runloop.c +++ b/runloop.c @@ -1051,6 +1051,7 @@ bool runloop_ctl(enum runloop_ctl_state state, void *data) #ifdef HAVE_THREADS threaded_enable = settings->threaded_data_runloop_enable; #endif + task_queue_ctl(TASK_QUEUE_CTL_DEINIT, NULL); task_queue_ctl(TASK_QUEUE_CTL_INIT, &threaded_enable); } break;