diff --git a/runloop.c b/runloop.c index 7f213d5c94..78ac4b27a8 100644 --- a/runloop.c +++ b/runloop.c @@ -1459,12 +1459,13 @@ int runloop_iterate(unsigned *sleep_ms) return -1; } - core_poll(); - #ifdef HAVE_MENU if (menu_driver_ctl(RARCH_MENU_CTL_IS_ALIVE, NULL)) { - int ret = runloop_iterate_menu((enum menu_action) + int ret; + + core_poll(); + ret = runloop_iterate_menu((enum menu_action) menu_event(cmd.state[0], cmd.state[2]), sleep_ms); @@ -1483,6 +1484,7 @@ int runloop_iterate(unsigned *sleep_ms) if (!runloop_check_state(&cmd, &runloop_shader_dir)) { /* RetroArch has been paused. */ + core_poll(); #ifdef HAVE_NETPLAY /* FIXME: This is an ugly way to tell Netplay this... */ netplay_driver_ctl(RARCH_NETPLAY_CTL_PAUSE, NULL);