Create CORE_INFO_CTL_LOAD

This commit is contained in:
twinaphex 2016-02-07 17:26:10 +01:00
parent e566665885
commit d3b9356958
3 changed files with 22 additions and 11 deletions

View File

@ -989,8 +989,7 @@ bool event_cmd_ctl(enum event_command cmd, void *data)
if (menu_driver_ctl(RARCH_MENU_CTL_LOAD_NO_CONTENT_GET, &ptr)) if (menu_driver_ctl(RARCH_MENU_CTL_LOAD_NO_CONTENT_GET, &ptr))
{ {
core_info_list_t *core_info_list = NULL; core_info_ctx_find_t info_find;
core_info_t *core_info = NULL;
#if defined(HAVE_DYNAMIC) #if defined(HAVE_DYNAMIC)
if (!(*settings->libretro)) if (!(*settings->libretro))
@ -999,16 +998,9 @@ bool event_cmd_ctl(enum event_command cmd, void *data)
libretro_get_system_info(settings->libretro, system, libretro_get_system_info(settings->libretro, system,
ptr); ptr);
#endif #endif
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list); info_find.path = settings->libretro;
if (!core_info_list) if (!core_info_ctl(CORE_INFO_CTL_LOAD, &info_find))
return false;
/* Load core info file */
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, &core_info);
if (!core_info_list_get_info(core_info_list,
core_info, settings->libretro))
return false; return false;
} }
#endif #endif

View File

@ -711,6 +711,24 @@ bool core_info_ctl(enum core_info_state state, void *data)
return false; return false;
} }
break; break;
case CORE_INFO_CTL_LOAD:
{
core_info_t *core_info = NULL;
core_info_ctx_find_t *info = (core_info_ctx_find_t*)data;
if (!info)
return false;
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, &core_info);
if (!core_info_curr_list)
return false;
if (!core_info_list_get_info(core_info_curr_list,
core_info, info->path))
return false;
}
break;
case CORE_INFO_CTL_NONE: case CORE_INFO_CTL_NONE:
default: default:
break; break;

View File

@ -34,6 +34,7 @@ enum core_info_state
CORE_INFO_CTL_CURRENT_CORE_FREE, CORE_INFO_CTL_CURRENT_CORE_FREE,
CORE_INFO_CTL_CURRENT_CORE_INIT, CORE_INFO_CTL_CURRENT_CORE_INIT,
CORE_INFO_CTL_CURRENT_CORE_GET, CORE_INFO_CTL_CURRENT_CORE_GET,
CORE_INFO_CTL_LOAD,
CORE_INFO_CTL_FIND CORE_INFO_CTL_FIND
}; };