Add RARCH_MENU_CTL_CONTEXT_DESTROY

This commit is contained in:
twinaphex 2015-12-12 23:36:43 +01:00
parent 3f4b0012d3
commit 5e1390bb5a
3 changed files with 6 additions and 12 deletions

View File

@ -386,8 +386,7 @@ static void uninit_drivers(int flags)
#ifdef HAVE_MENU
if (flags & DRIVER_MENU)
{
menu_driver_context_destroy();
menu_driver_ctl(RARCH_MENU_CTL_CONTEXT_DESTROY, NULL);
if (!menu_driver_ctl(RARCH_MENU_CTL_OWNS_DRIVER, NULL))
menu_driver_ctl(RARCH_MENU_CTL_DEINIT, NULL);
}

View File

@ -169,14 +169,6 @@ void menu_driver_list_free(file_list_t *list, size_t idx, size_t list_size)
file_list_free_actiondata(list, idx);
}
void menu_driver_context_destroy(void)
{
const menu_ctx_driver_t *driver = menu_driver_ctx;
if (driver && driver->context_destroy)
driver->context_destroy(menu_userdata ? menu_userdata : NULL);
}
void menu_driver_list_set_selection(file_list_t *list)
{
const menu_ctx_driver_t *driver = menu_driver_ctx;
@ -859,6 +851,10 @@ bool menu_driver_ctl(enum rarch_menu_ctl_state state, void *data)
if (driver->context_reset)
driver->context_reset(menu_userdata ? menu_userdata : NULL);
break;
case RARCH_MENU_CTL_CONTEXT_DESTROY:
if (driver && driver->context_destroy)
driver->context_destroy(menu_userdata ? menu_userdata : NULL);
break;
default:
case RARCH_MENU_CTL_NONE:
break;

View File

@ -130,6 +130,7 @@ enum rarch_menu_ctl_state
RARCH_MENU_CTL_LIST_CLEAR,
RARCH_MENU_CTL_TOGGLE,
RARCH_MENU_CTL_CONTEXT_RESET,
RARCH_MENU_CTL_CONTEXT_DESTROY,
RARCH_MENU_CTL_POPULATE_ENTRIES
};
@ -363,8 +364,6 @@ void menu_driver_list_set_selection(file_list_t *list);
void *menu_driver_list_get_entry(menu_list_type_t type, unsigned i);
void menu_driver_context_destroy(void);
bool menu_driver_list_push(menu_displaylist_info_t *info, unsigned type);
size_t menu_driver_list_get_selection(void);