This commit is contained in:
twinaphex 2016-04-10 15:52:06 +02:00
parent 00dce981c8
commit 695a93e071
2 changed files with 28 additions and 36 deletions

View File

@ -1192,7 +1192,12 @@ bool event_cmd_ctl(enum event_command cmd, void *data)
break;
case EVENT_CMD_AUTOSAVE_DEINIT:
#ifdef HAVE_THREADS
autosave_event_deinit();
{
global_t *global = global_get_ptr();
if (!global->sram.use)
return false;
autosave_event_deinit();
}
#endif
break;
case EVENT_CMD_AUTOSAVE_INIT:

View File

@ -1325,40 +1325,6 @@ error:
return 1;
}
/**
* rarch_main_deinit:
*
* Deinitializes the program.
**/
static void rarch_main_deinit(void)
{
global_t *global = global_get_ptr();
event_cmd_ctl(EVENT_CMD_NETPLAY_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_COMMAND_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_REMOTE_DEINIT, NULL);
if (global->sram.use)
event_cmd_ctl(EVENT_CMD_AUTOSAVE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_RECORD_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SAVEFILES, NULL);
event_cmd_ctl(EVENT_CMD_REWIND_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_CHEATS_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_BSV_MOVIE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_AUTOSAVE_STATE, NULL);
event_cmd_ctl(EVENT_CMD_CORE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_TEMPORARY_CONTENT_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SUBSYSTEM_FULLPATHS_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SAVEFILES_DEINIT, NULL);
rarch_ctl(RARCH_CTL_UNSET_INITED, NULL);
}
#define FAIL_CPU(simd_type) do { \
RARCH_ERR(simd_type " code is compiled in, but CPU does not support this feature. Cannot continue.\n"); \
retro_fail(1, "validate_cpu_features()"); \
@ -1450,7 +1416,28 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data)
case RARCH_CTL_MAIN_DEINIT:
if (!rarch_ctl(RARCH_CTL_IS_INITED, NULL))
return false;
rarch_main_deinit();
event_cmd_ctl(EVENT_CMD_NETPLAY_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_COMMAND_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_REMOTE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_AUTOSAVE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_RECORD_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SAVEFILES, NULL);
event_cmd_ctl(EVENT_CMD_REWIND_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_CHEATS_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_BSV_MOVIE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_AUTOSAVE_STATE, NULL);
event_cmd_ctl(EVENT_CMD_CORE_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_TEMPORARY_CONTENT_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SUBSYSTEM_FULLPATHS_DEINIT, NULL);
event_cmd_ctl(EVENT_CMD_SAVEFILES_DEINIT, NULL);
rarch_ctl(RARCH_CTL_UNSET_INITED, NULL);
break;
case RARCH_CTL_MAIN_INIT:
{