From f17655f0738051da0b4860fe1f435acca484a1f2 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 21 May 2019 03:32:18 +0200 Subject: [PATCH] Revert "attempt to fix issue described in #8725" This reverts commit 90b0afdaa7c76b31cca25fcfaa89b3b194c2dcdc. --- cheevos/cheevos.c | 3 --- command.c | 5 +---- retroarch.c | 30 ++++++++++++++++++------------ 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/cheevos/cheevos.c b/cheevos/cheevos.c index 615b610255..8a05ca3499 100644 --- a/cheevos/cheevos.c +++ b/cheevos/cheevos.c @@ -2282,9 +2282,6 @@ bool cheevos_toggle_hardcore_mode(void) const char *msg = msg_hash_to_str( MSG_CHEEVOS_HARDCORE_MODE_ENABLE); - /* reset the state loaded flag in case it was set */ - cheevos_state_loaded_flag = false; - /* send reset core cmd to avoid any user * savestate previusly loaded. */ command_event(CMD_EVENT_RESET, NULL); diff --git a/command.c b/command.c index 918e57d358..38456a7d79 100755 --- a/command.c +++ b/command.c @@ -1730,10 +1730,7 @@ static bool command_event_main_state(unsigned cmd) { #ifdef HAVE_CHEEVOS /* RCHEEVOS TODO: remove duplication below */ - if (cheevos_hardcore_active) - cheevos_state_loaded_flag = true; - if (rcheevos_hardcore_active) - rcheevos_state_loaded_flag = true; + rcheevos_state_loaded_flag = cheevos_state_loaded_flag = true; #endif ret = true; #ifdef HAVE_NETWORKING diff --git a/retroarch.c b/retroarch.c index 6bf030fb59..7085aceb36 100644 --- a/retroarch.c +++ b/retroarch.c @@ -4167,22 +4167,28 @@ static enum runloop_state runloop_check_state( /* RCHEEVOS TODO: remove the 'rcheevos_*' below */ rcheevos_hardcore_active = settings->bools.cheevos_enable && settings->bools.cheevos_hardcore_mode_enable - && rcheevos_loaded && !rcheevos_hardcore_paused; + && rcheevos_loaded && rcheevos_hardcore_paused; cheevos_hardcore_active = settings->bools.cheevos_enable && settings->bools.cheevos_hardcore_mode_enable - && cheevos_loaded && !cheevos_hardcore_paused; + && cheevos_loaded && cheevos_hardcore_paused; - rcheevos_hardcore_paused = !settings->bools.cheevos_old_enable - && rcheevos_hardcore_active - && rcheevos_state_loaded_flag; - - cheevos_hardcore_paused = settings->bools.cheevos_old_enable - && cheevos_hardcore_active - && cheevos_state_loaded_flag; - - if (rcheevos_hardcore_paused || cheevos_hardcore_paused) - runloop_msg_queue_push(msg_hash_to_str(MSG_CHEEVOS_HARDCORE_MODE_DISABLED), 0, 180, true, NULL, MESSAGE_QUEUE_ICON_DEFAULT, MESSAGE_QUEUE_CATEGORY_INFO); + if (!settings->bools.cheevos_old_enable) + { + if (rcheevos_hardcore_active && rcheevos_state_loaded_flag) + { + rcheevos_hardcore_paused = true; + runloop_msg_queue_push(msg_hash_to_str(MSG_CHEEVOS_HARDCORE_MODE_DISABLED), 0, 180, true, NULL, MESSAGE_QUEUE_ICON_DEFAULT, MESSAGE_QUEUE_CATEGORY_INFO); + } + } + else + { + if (cheevos_hardcore_active && cheevos_state_loaded_flag) + { + cheevos_hardcore_paused = true; + runloop_msg_queue_push(msg_hash_to_str(MSG_CHEEVOS_HARDCORE_MODE_DISABLED), 0, 180, true, NULL, MESSAGE_QUEUE_ICON_DEFAULT, MESSAGE_QUEUE_CATEGORY_INFO); + } + } if (!(rcheevos_hardcore_active || cheevos_hardcore_active)) #endif