From 1c38e9ae0541beb30de51945e2799252f8a57cb2 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 17 Aug 2015 06:40:28 +0200 Subject: [PATCH] Don't call menu_driver_render from menu_input.c --- menu/cbs/menu_cbs_iterate.c | 7 +++---- menu/menu_input.c | 35 +++++++++++++++-------------------- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/menu/cbs/menu_cbs_iterate.c b/menu/cbs/menu_cbs_iterate.c index d7c31b3370..82aeb16c27 100644 --- a/menu/cbs/menu_cbs_iterate.c +++ b/menu/cbs/menu_cbs_iterate.c @@ -469,11 +469,10 @@ static int action_iterate_main(const char *label, unsigned action) break; case ITERATE_TYPE_BIND: if (menu_input_bind_iterate(msg, sizeof(msg))) - { - if (msg[0] != '\0') - do_messagebox = true; menu_list_pop_stack(menu_list); - } + else + do_messagebox = true; + do_render = true; break; case ITERATE_TYPE_VIEWPORT: ret = action_iterate_menu_viewport(msg, sizeof(msg), label, action, hash); diff --git a/menu/menu_input.c b/menu/menu_input.c index a2561bc204..e5e11cb902 100644 --- a/menu/menu_input.c +++ b/menu/menu_input.c @@ -531,34 +531,29 @@ static int menu_input_bind_iterate_keyboard(int64_t current, int timeout) int menu_input_bind_iterate(char *s, size_t len) { - int64_t current; struct menu_bind_state binds; - int timeout = 0; menu_input_t *menu_input = menu_input_get_ptr(); driver_t *driver = driver_get_ptr(); global_t *global = global_get_ptr(); bool bind_mode_kb = global ? global->menu.bind_mode_keyboard : false; - - menu_driver_render(); - - current = rarch_get_time_usec(); - timeout = (menu_input->binds.timeout_end - current) / 1000000; - - if (bind_mode_kb) - snprintf(s, len, - "[%s]\npress keyboard\n(timeout %d %s)", - input_config_bind_map[ - menu_input->binds.begin - MENU_SETTINGS_BIND_BEGIN].desc, - timeout, - menu_hash_to_str(MENU_VALUE_SECONDS)); - else - snprintf(s, len, - "[%s]\npress joypad\n(RETURN to skip)", - input_config_bind_map[ - menu_input->binds.begin - MENU_SETTINGS_BIND_BEGIN].desc); + int64_t current = rarch_get_time_usec(); + int timeout = (menu_input->binds.timeout_end - current) / 1000000; if (bind_mode_kb) + { + snprintf(s, len, + "[%s]\npress keyboard\n(timeout %d %s)", + input_config_bind_map[ + menu_input->binds.begin - MENU_SETTINGS_BIND_BEGIN].desc, + timeout, + menu_hash_to_str(MENU_VALUE_SECONDS)); return menu_input_bind_iterate_keyboard(current, timeout); + } + else + snprintf(s, len, + "[%s]\npress joypad\n(RETURN to skip)", + input_config_bind_map[ + menu_input->binds.begin - MENU_SETTINGS_BIND_BEGIN].desc); binds = menu_input->binds;