diff --git a/plugins/data/init.lua b/plugins/data/init.lua index 83cf194af11..9387a469744 100644 --- a/plugins/data/init.lua +++ b/plugins/data/init.lua @@ -36,13 +36,13 @@ function data.startplugin() end) emu.register_callback(function(set) local ret + if set == "" then + set = emu.romname() + end if set == cur_set then return cur_list - elseif set == "" then - set = cur_set - else - cur_set = set end + cur_set = set if not set then return nil end diff --git a/src/frontend/mame/ui/datmenu.cpp b/src/frontend/mame/ui/datmenu.cpp index 71bc7c9bf09..e28f16afd69 100644 --- a/src/frontend/mame/ui/datmenu.cpp +++ b/src/frontend/mame/ui/datmenu.cpp @@ -45,7 +45,7 @@ menu_dats_view::menu_dats_view(mame_ui_manager &mui, render_container &container m_parent = image.software_entry()->parentname(); } } - const char *lua_list = mame_machine_manager::instance()->lua()->call_plugin(driver->name, "data_list"); + const char *lua_list = mame_machine_manager::instance()->lua()->call_plugin(driver ? driver->name : "", "data_list"); if(lua_list) { std::string list(lua_list);