diff --git a/cheevos/cheevos.c b/cheevos/cheevos.c index 33e8e14558..4a195c20a1 100644 --- a/cheevos/cheevos.c +++ b/cheevos/cheevos.c @@ -53,6 +53,7 @@ #include "cheevos.h" #include "cheevos_client.h" +#include "cheevos_menu.h" #include "cheevos_locals.h" #include "../network/netplay/netplay.h" diff --git a/cheevos/cheevos_locals.h b/cheevos/cheevos_locals.h index 0a06510aaf..1960e414de 100644 --- a/cheevos/cheevos_locals.h +++ b/cheevos/cheevos_locals.h @@ -147,8 +147,6 @@ typedef struct rcheevos_menuitem_t enum msg_hash_enums state_label_idx; } rcheevos_menuitem_t; -void rcheevos_menu_reset_badges(void); - #endif typedef struct rcheevos_locals_t diff --git a/cheevos/cheevos_menu.h b/cheevos/cheevos_menu.h index eea43fb2d5..9813557299 100644 --- a/cheevos/cheevos_menu.h +++ b/cheevos/cheevos_menu.h @@ -33,6 +33,7 @@ void rcheevos_menu_populate_hardcore_pause_submenu(void* data); bool rcheevos_menu_get_state(unsigned menu_offset, char* buffer, size_t buffer_size); bool rcheevos_menu_get_sublabel(unsigned menu_offset, char* buffer, size_t buffer_size); uintptr_t rcheevos_menu_get_badge_texture(unsigned menu_offset); +void rcheevos_menu_reset_badges(void); RETRO_END_DECLS diff --git a/driver.c b/driver.c index 2c82f2bea8..46cfb88231 100644 --- a/driver.c +++ b/driver.c @@ -49,6 +49,9 @@ #ifdef HAVE_MENU #include "menu/menu_driver.h" +#ifdef HAVE_CHEEVOS +#include "cheevos/cheevos_menu.h" +#endif #endif static void retro_frame_null(const void *data, unsigned width, @@ -719,7 +722,11 @@ void driver_uninit(int flags) menu_explore_context_deinit(); #endif menu_contentless_cores_context_deinit(); - + +#ifdef HAVE_CHEEVOS + rcheevos_menu_reset_badges(); +#endif + menu_driver_ctl(RARCH_MENU_CTL_DEINIT, NULL); } #endif