diff --git a/driver.c b/driver.c index 4adea1f1fe..a54a680951 100644 --- a/driver.c +++ b/driver.c @@ -396,7 +396,7 @@ void driver_uninit(int flags) core_info_free_current_core(); #ifdef HAVE_MENU - if (flags & DRIVER_MENU_MASK && !menu_driver_ctl(RARCH_MENU_CTL_OWNS_DRIVER, NULL)) + if (flags & DRIVER_MENU_MASK) menu_driver_ctl(RARCH_MENU_CTL_DEINIT, NULL); #endif @@ -415,9 +415,6 @@ void driver_uninit(int flags) if (flags & DRIVER_AUDIO_MASK) audio_driver_deinit(); - if ((flags & DRIVER_MENU_MASK) && !menu_driver_ctl(RARCH_MENU_CTL_OWNS_DRIVER, NULL)) - menu_driver_destroy_data(); - if ((flags & DRIVER_VIDEO_MASK) && !video_driver_owns_driver()) video_driver_destroy_data(); diff --git a/menu/menu_driver.c b/menu/menu_driver.c index 95e14f1586..d289a88c56 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -1688,11 +1688,6 @@ void menu_driver_set_thumbnail_content(char *s, size_t len) menu_driver_ctx->set_thumbnail_content(menu_userdata, s, len); } -void menu_driver_destroy_data(void) -{ - menu_driver_ctx = NULL; -} - void menu_driver_destroy(void) { menu_driver_pending_quick_menu = false; @@ -1702,6 +1697,7 @@ void menu_driver_destroy(void) menu_driver_load_no_content = false; menu_driver_alive = false; menu_driver_data_own = false; + menu_driver_ctx = NULL; menu_userdata = NULL; } @@ -1851,10 +1847,7 @@ bool menu_driver_ctl(enum rarch_menu_ctl_state state, void *data) menu_input_ctl(MENU_INPUT_CTL_DEINIT, NULL); if (menu_driver_ctx && menu_driver_ctx->free) - { menu_driver_ctx->free(menu_userdata); - menu_driver_ctx = NULL; - } if (menu_userdata) free(menu_userdata); diff --git a/menu/menu_driver.h b/menu/menu_driver.h index 0165364f85..98f550e0b8 100644 --- a/menu/menu_driver.h +++ b/menu/menu_driver.h @@ -685,8 +685,6 @@ void menu_display_reset_textures_list(const char *texture_path, const char *icon void menu_driver_destroy(void); -void menu_driver_destroy_data(void); - extern uintptr_t menu_display_white_texture; extern menu_display_ctx_driver_t menu_display_ctx_gl;