Move message queue out of RetroArch core's control.

This commit is contained in:
Themaister 2012-05-30 01:20:14 +02:00
parent 502fd8ff54
commit f600bf437c
2 changed files with 10 additions and 4 deletions

View File

@ -482,6 +482,7 @@ bool rarch_main_iterate(void);
void rarch_main_deinit(void); void rarch_main_deinit(void);
void rarch_render_cached_frame(void); void rarch_render_cached_frame(void);
void rarch_init_msg_queue(void); void rarch_init_msg_queue(void);
void rarch_deinit_msg_queue(void);
void rarch_load_state(void); void rarch_load_state(void);
void rarch_save_state(void); void rarch_save_state(void);

View File

@ -1148,7 +1148,12 @@ static void init_recording(void)
params.fb_height = next_pow2(max_height); params.fb_height = next_pow2(max_height);
} }
RARCH_LOG("Recording with FFmpeg to %s @ %ux%u. (FB size: %ux%u 32-bit: %s)\n", g_extern.record_path, params.out_width, params.out_height, params.fb_width, params.fb_height, params.rgb32 ? "yes" : "no"); RARCH_LOG("Recording with FFmpeg to %s @ %ux%u. (FB size: %ux%u 32-bit: %s)\n",
g_extern.record_path,
params.out_width, params.out_height,
params.fb_width, params.fb_height,
params.rgb32 ? "yes" : "no");
g_extern.rec = ffemu_new(&params); g_extern.rec = ffemu_new(&params);
if (!g_extern.rec) if (!g_extern.rec)
{ {
@ -1175,7 +1180,7 @@ void rarch_init_msg_queue(void)
rarch_assert(g_extern.msg_queue = msg_queue_new(8)); rarch_assert(g_extern.msg_queue = msg_queue_new(8));
} }
static void deinit_msg_queue(void) void rarch_deinit_msg_queue(void)
{ {
if (g_extern.msg_queue) if (g_extern.msg_queue)
{ {
@ -2359,7 +2364,6 @@ int rarch_main_init(int argc, char *argv[])
goto error; goto error;
init_system_av_info(); init_system_av_info();
rarch_init_msg_queue();
if (!g_extern.sram_load_disable) if (!g_extern.sram_load_disable)
load_save_files(); load_save_files();
@ -2539,7 +2543,6 @@ void rarch_main_deinit(void)
#ifdef HAVE_BSV_MOVIE #ifdef HAVE_BSV_MOVIE
deinit_movie(); deinit_movie();
#endif #endif
deinit_msg_queue();
pretro_unload_game(); pretro_unload_game();
pretro_deinit(); pretro_deinit();
@ -2553,8 +2556,10 @@ int main(int argc, char *argv[])
{ {
int init_ret; int init_ret;
if ((init_ret = rarch_main_init(argc, argv))) return init_ret; if ((init_ret = rarch_main_init(argc, argv))) return init_ret;
rarch_init_msg_queue();
while (rarch_main_iterate()); while (rarch_main_iterate());
rarch_main_deinit(); rarch_main_deinit();
rarch_deinit_msg_queue();
rarch_main_clear_state(); rarch_main_clear_state();
return 0; return 0;
} }