From c2882164f9a1f1d68dc06a80df9bdee716b0c520 Mon Sep 17 00:00:00 2001 From: radius Date: Mon, 10 Jul 2017 21:51:56 -0500 Subject: [PATCH] reenable rewind if the user disables netplay --- command.c | 4 +++- menu/cbs/menu_cbs_ok.c | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/command.c b/command.c index 26ef3d6a6b..4c59535345 100644 --- a/command.c +++ b/command.c @@ -1856,10 +1856,12 @@ bool command_event(enum event_command cmd, void *data) if (settings->bools.cheevos_hardcore_mode_enable) return false; #endif +#ifdef HAVE_NETWORKING /* Only enable state manager if netplay is not underway TODO: Add a setting for these tweaks */ - if (settings->bools.rewind_enable + if (settings->bools.rewind_enable && !netplay_driver_ctl(RARCH_NETPLAY_CTL_IS_ENABLED, NULL)) +#endif state_manager_event_init((unsigned)settings->rewind_buffer_size); } break; diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index 25e88187ff..4d41103f11 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -4373,9 +4373,15 @@ static int action_ok_netplay_enable_client(const char *path, static int action_ok_netplay_disconnect(const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx) { + settings_t *settings = config_get_ptr(); #ifdef HAVE_NETWORKING netplay_driver_ctl(RARCH_NETPLAY_CTL_DISCONNECT, NULL); netplay_driver_ctl(RARCH_NETPLAY_CTL_DISABLE, NULL); + + /* Re-enable rewind if it was enabled + TODO: Add a setting for these tweaks */ + if (settings->bools.rewind_enable) + command_event(CMD_EVENT_REWIND_INIT, NULL); return generic_action_ok_command(CMD_EVENT_RESUME); #else