From 43a113ee8dbbc461c297bd3d4cf3c5a5ad9f76c4 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sat, 7 Mar 2015 14:54:04 +0100 Subject: [PATCH] Create RARCH_CMD_LOAD_CORE_DEINIT --- retroarch.c | 7 ++++++- retroarch.h | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/retroarch.c b/retroarch.c index 9df730dfd9..872c5714a4 100644 --- a/retroarch.c +++ b/retroarch.c @@ -2138,7 +2138,6 @@ static bool rarch_update_system_info(struct retro_system_info *_info, bool *load_no_content) { #if defined(HAVE_DYNAMIC) - libretro_free_system_info(_info); if (!(*g_settings.libretro)) return false; @@ -2187,9 +2186,15 @@ bool rarch_main_command(unsigned cmd) rarch_environment_cb(RETRO_ENVIRONMENT_EXEC, (void*)g_extern.fullpath); rarch_main_command(RARCH_CMD_QUIT); +#endif + break; + case RARCH_CMD_LOAD_CORE_DEINIT: +#ifdef HAVE_DYNAMIC + libretro_free_system_info(&g_extern.menu.info); #endif break; case RARCH_CMD_LOAD_CORE_PERSIST: + rarch_main_command(RARCH_CMD_LOAD_CORE_DEINIT); { #ifdef HAVE_MENU menu_handle_t *menu = menu_driver_resolve(); diff --git a/retroarch.h b/retroarch.h index ae694ecd90..7a43214c4f 100644 --- a/retroarch.h +++ b/retroarch.h @@ -33,6 +33,7 @@ enum basic_event RARCH_CMD_LOAD_CONTENT, RARCH_CMD_LOAD_CONTENT_PERSIST, /* Loads core. */ + RARCH_CMD_LOAD_CORE_DEINIT, RARCH_CMD_LOAD_CORE, RARCH_CMD_LOAD_CORE_PERSIST, RARCH_CMD_LOAD_STATE,