mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
Don't put overlay code on thread again
This commit is contained in:
parent
85aae0d0b5
commit
f806e7b9c1
@ -69,9 +69,6 @@ static void data_runloop_thread_deinit(void)
|
||||
|
||||
slock_free(g_data_runloop.lock);
|
||||
slock_free(g_data_runloop.cond_lock);
|
||||
#ifdef HAVE_OVERLAY
|
||||
rarch_main_data_overlay_thread_uninit();
|
||||
#endif
|
||||
scond_free(g_data_runloop.cond);
|
||||
}
|
||||
}
|
||||
@ -195,10 +192,6 @@ static void rarch_main_data_thread_init(void)
|
||||
g_data_runloop.cond_lock = slock_new();
|
||||
g_data_runloop.cond = scond_new();
|
||||
|
||||
#ifdef HAVE_OVERLAY
|
||||
rarch_main_data_overlay_thread_init();
|
||||
#endif
|
||||
|
||||
g_data_runloop.thread = sthread_create(data_thread_loop, &g_data_runloop);
|
||||
|
||||
if (!g_data_runloop.thread)
|
||||
@ -249,16 +242,13 @@ void rarch_main_data_iterate(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_OVERLAY
|
||||
rarch_main_data_overlay_image_upload_iterate(false);
|
||||
#endif
|
||||
#ifdef HAVE_RPNG
|
||||
#ifdef HAVE_MENU
|
||||
rarch_main_data_nbio_image_upload_iterate(false);
|
||||
#endif
|
||||
#endif
|
||||
#ifdef HAVE_OVERLAY
|
||||
rarch_main_data_overlay_iterate (false);
|
||||
rarch_main_data_overlay_iterate();
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_MENU
|
||||
|
@ -14,81 +14,34 @@
|
||||
*/
|
||||
|
||||
#include <retro_miscellaneous.h>
|
||||
#ifdef HAVE_THREADS
|
||||
#include <rthreads/rthreads.h>
|
||||
#endif
|
||||
|
||||
#include "tasks.h"
|
||||
#include "../input/input_overlay.h"
|
||||
|
||||
#ifdef HAVE_THREADS
|
||||
static slock_t *overlay_lock;
|
||||
#endif
|
||||
|
||||
void rarch_main_data_overlay_image_upload_iterate(bool is_thread)
|
||||
void rarch_main_data_overlay_iterate(void)
|
||||
{
|
||||
#ifdef HAVE_THREADS
|
||||
if (is_thread)
|
||||
slock_lock(overlay_lock);
|
||||
#endif
|
||||
|
||||
switch (input_overlay_status())
|
||||
while (input_overlay_status() != OVERLAY_STATUS_NONE)
|
||||
{
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING:
|
||||
input_overlay_load_overlays_iterate();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
switch (input_overlay_status())
|
||||
{
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING:
|
||||
input_overlay_load_overlays_iterate();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_LOAD:
|
||||
input_overlay_load_overlays();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING_RESOLVE:
|
||||
input_overlay_load_overlays_resolve_iterate();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_DONE:
|
||||
input_overlay_new_done();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_ERROR:
|
||||
input_overlay_free();
|
||||
break;
|
||||
default:
|
||||
case OVERLAY_STATUS_NONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_THREADS
|
||||
if (is_thread)
|
||||
slock_unlock(overlay_lock);
|
||||
#endif
|
||||
}
|
||||
|
||||
void rarch_main_data_overlay_iterate(bool is_thread)
|
||||
{
|
||||
#ifdef HAVE_THREADS
|
||||
if (is_thread)
|
||||
slock_lock(overlay_lock);
|
||||
#endif
|
||||
|
||||
switch (input_overlay_status())
|
||||
{
|
||||
case OVERLAY_STATUS_DEFERRED_LOAD:
|
||||
input_overlay_load_overlays();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING_RESOLVE:
|
||||
input_overlay_load_overlays_resolve_iterate();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_DONE:
|
||||
input_overlay_new_done();
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_ERROR:
|
||||
input_overlay_free();
|
||||
break;
|
||||
default:
|
||||
case OVERLAY_STATUS_NONE:
|
||||
break;
|
||||
}
|
||||
|
||||
#ifdef HAVE_THREADS
|
||||
if (is_thread)
|
||||
slock_unlock(overlay_lock);
|
||||
#endif
|
||||
}
|
||||
|
||||
void rarch_main_data_overlay_thread_uninit(void)
|
||||
{
|
||||
#ifdef HAVE_THREADS
|
||||
slock_free(overlay_lock);
|
||||
#endif
|
||||
}
|
||||
|
||||
void rarch_main_data_overlay_thread_init(void)
|
||||
{
|
||||
#ifdef HAVE_THREADS
|
||||
overlay_lock = slock_new();
|
||||
#endif
|
||||
}
|
||||
|
@ -90,13 +90,7 @@ bool rarch_main_data_db_is_active(void);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_OVERLAY
|
||||
void rarch_main_data_overlay_image_upload_iterate(bool is_thread);
|
||||
|
||||
void rarch_main_data_overlay_iterate(bool is_thread);
|
||||
|
||||
void rarch_main_data_overlay_thread_uninit(void);
|
||||
|
||||
void rarch_main_data_overlay_thread_init(void);
|
||||
void rarch_main_data_overlay_iterate(void);
|
||||
#endif
|
||||
|
||||
void rarch_main_data_nbio_iterate(bool is_thread);
|
||||
|
Loading…
x
Reference in New Issue
Block a user