diff --git a/menu/menu_driver.c b/menu/menu_driver.c index 7a9ffb4df3..78b56a45f4 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -275,3 +275,15 @@ void menu_driver_free(menu_handle_t *menu) if (driver->menu_ctx && driver->menu_ctx->free) driver->menu_ctx->free(menu); } + +void menu_driver_render(void) +{ + driver_t *driver = driver_get_ptr(); + if (!driver) + return; + if (!driver->video_data) + return; + + if (driver->menu_ctx && driver->menu_ctx->render) + driver->menu_ctx->render(); +} diff --git a/menu/menu_driver.h b/menu/menu_driver.h index fcd39eccfc..3aa136a2a9 100644 --- a/menu/menu_driver.h +++ b/menu/menu_driver.h @@ -308,6 +308,8 @@ void menu_driver_entry_iterate(unsigned action); void menu_driver_free(menu_handle_t *menu); +void menu_driver_render(void); + #ifdef __cplusplus } #endif diff --git a/menu/menu_input.c b/menu/menu_input.c index 10809ea64e..27fa21dc01 100644 --- a/menu/menu_input.c +++ b/menu/menu_input.c @@ -389,9 +389,7 @@ int menu_input_bind_iterate(void) binds = menu->binds; - if (driver->video_data && driver->menu_ctx && - driver->menu_ctx->render) - driver->menu_ctx->render(); + menu_driver_render(); snprintf(msg, sizeof(msg), "[%s]\npress joypad\n(RETURN to skip)", input_config_bind_map[ @@ -436,9 +434,7 @@ int menu_input_bind_iterate_keyboard(void) if (!menu) return -1; - if (driver->video_data && driver->menu_ctx && - driver->menu_ctx->render) - driver->menu_ctx->render(); + menu_driver_render(); current = rarch_get_time_usec(); timeout = (menu->binds.timeout_end - current) / 1000000;