diff --git a/driver.c b/driver.c index 755311e2e7..2dc0534b2f 100644 --- a/driver.c +++ b/driver.c @@ -393,7 +393,7 @@ void init_drivers(int flags) if (flags & DRIVER_MENU) { init_menu(); - menu_update_libretro_info(&global->menu.info); + menu_update_libretro_info(); } #endif diff --git a/menu/menu.c b/menu/menu.c index 61d1423e55..0d8d14f3e5 100644 --- a/menu/menu.c +++ b/menu/menu.c @@ -26,12 +26,17 @@ /** * menu_update_libretro_info: - * @info : Pointer to system info * * Update menu state which depends on config. **/ -void menu_update_libretro_info(struct retro_system_info *info) +void menu_update_libretro_info(void) { + global_t *global = global_get_ptr(); + struct retro_system_info *info = global ? &global->menu.info : NULL; + + if (!global || !info) + return; + #ifndef HAVE_DYNAMIC retro_get_system_info(info); #endif @@ -159,8 +164,6 @@ void *menu_init(const void *data) if (!menu_ctx) return NULL; - menu_update_libretro_info(&global->menu.info); - if (!(menu = (menu_handle_t*)menu_ctx->init())) return NULL; diff --git a/menu/menu.h b/menu/menu.h index 8c03a2ad6e..a2aec0b195 100644 --- a/menu/menu.h +++ b/menu/menu.h @@ -199,7 +199,7 @@ void menu_update_system_info(menu_handle_t *menu, bool *load_no_content); void menu_apply_deferred_settings(void); -void menu_update_libretro_info(struct retro_system_info *info); +void menu_update_libretro_info(void); #ifdef __cplusplus }