diff --git a/src/frontend/mame/ui/miscmenu.cpp b/src/frontend/mame/ui/miscmenu.cpp index 3da9d91ee4e..3902908aadc 100644 --- a/src/frontend/mame/ui/miscmenu.cpp +++ b/src/frontend/mame/ui/miscmenu.cpp @@ -681,6 +681,7 @@ menu_machine_configure::menu_machine_configure(mame_ui_manager &mui, render_cont , x0(_x0) , y0(_y0) , m_curbios(0) + , m_fav_reset(false) { // parse the INI file std::string error; @@ -690,6 +691,8 @@ menu_machine_configure::menu_machine_configure(mame_ui_manager &mui, render_cont menu_machine_configure::~menu_machine_configure() { + if (m_fav_reset && main_filters::actual == FILTER_FAVORITE) + reset_topmost(reset_options::SELECT_FIRST); } //------------------------------------------------- @@ -724,9 +727,9 @@ void menu_machine_configure::handle() mame_machine_manager::instance()->favorite().add_favorite_game(m_drv); reset(reset_options::REMEMBER_POSITION); break; - case DELFAV: mame_machine_manager::instance()->favorite().remove_favorite_game(); + m_fav_reset = true; reset(reset_options::REMEMBER_POSITION); break; case CONTROLLER: diff --git a/src/frontend/mame/ui/miscmenu.h b/src/frontend/mame/ui/miscmenu.h index 5431b2e9996..22d2555b204 100644 --- a/src/frontend/mame/ui/miscmenu.h +++ b/src/frontend/mame/ui/miscmenu.h @@ -165,6 +165,7 @@ private: s_bios m_bios; std::size_t m_curbios; void setup_bios(); + bool m_fav_reset; }; //-------------------------------------------------