mirror of
https://github.com/libretro/RetroArch
synced 2025-04-10 06:44:27 +00:00
Add core_info_ctl actions
This commit is contained in:
parent
7a01fb1616
commit
490c023fe3
@ -894,8 +894,8 @@ static bool event_update_system_info(struct retro_system_info *_info,
|
|||||||
libretro_get_system_info(settings->libretro, _info,
|
libretro_get_system_info(settings->libretro, _info,
|
||||||
load_no_content);
|
load_no_content);
|
||||||
#endif
|
#endif
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_GET, &core_info);
|
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, &core_info);
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &core_info_list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list);
|
||||||
|
|
||||||
if (!core_info_list)
|
if (!core_info_list)
|
||||||
return false;
|
return false;
|
||||||
@ -1274,13 +1274,13 @@ bool event_cmd_ctl(enum event_command cmd, void *data)
|
|||||||
settings->content_history_size);
|
settings->content_history_size);
|
||||||
break;
|
break;
|
||||||
case EVENT_CMD_CORE_INFO_DEINIT:
|
case EVENT_CMD_CORE_INFO_DEINIT:
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_FREE, NULL);
|
core_info_ctl(CORE_INFO_CTL_LIST_DEINIT, NULL);
|
||||||
break;
|
break;
|
||||||
case EVENT_CMD_CORE_INFO_INIT:
|
case EVENT_CMD_CORE_INFO_INIT:
|
||||||
event_cmd_ctl(EVENT_CMD_CORE_INFO_DEINIT, NULL);
|
event_cmd_ctl(EVENT_CMD_CORE_INFO_DEINIT, NULL);
|
||||||
|
|
||||||
if (*settings->libretro_directory)
|
if (*settings->libretro_directory)
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_INIT, NULL);
|
core_info_ctl(CORE_INFO_CTL_LIST_INIT, NULL);
|
||||||
break;
|
break;
|
||||||
case EVENT_CMD_CORE_DEINIT:
|
case EVENT_CMD_CORE_DEINIT:
|
||||||
{
|
{
|
||||||
|
21
core_info.c
21
core_info.c
@ -484,7 +484,7 @@ bool core_info_does_support_file(const core_info_t *core, const char *path)
|
|||||||
const char *core_info_list_get_all_extensions(void)
|
const char *core_info_list_get_all_extensions(void)
|
||||||
{
|
{
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
if (!list)
|
if (!list)
|
||||||
return NULL;
|
return NULL;
|
||||||
return list->all_ext;
|
return list->all_ext;
|
||||||
@ -662,10 +662,29 @@ void core_info_list_get_missing_firmware(
|
|||||||
|
|
||||||
bool core_info_ctl(enum core_info_state state, void *data)
|
bool core_info_ctl(enum core_info_state state, void *data)
|
||||||
{
|
{
|
||||||
|
static core_info_t *core_info_current = NULL;
|
||||||
static core_info_list_t *core_info_curr_list = NULL;
|
static core_info_list_t *core_info_curr_list = NULL;
|
||||||
|
|
||||||
switch (state)
|
switch (state)
|
||||||
{
|
{
|
||||||
|
case CORE_INFO_CTL_CURRENT_CORE_FREE:
|
||||||
|
if (core_info_current)
|
||||||
|
free(core_info_current);
|
||||||
|
core_info_current = NULL;
|
||||||
|
return true;
|
||||||
|
case CORE_INFO_CTL_CURRENT_CORE_INIT:
|
||||||
|
core_info_current = (core_info_t*)calloc(1, sizeof(core_info_t));
|
||||||
|
if (!core_info_current)
|
||||||
|
return false;
|
||||||
|
return true;
|
||||||
|
case CORE_INFO_CTL_CURRENT_CORE_GET:
|
||||||
|
{
|
||||||
|
core_info_t **core = (core_info_t**)data;
|
||||||
|
if (!core)
|
||||||
|
return false;
|
||||||
|
*core = core_info_current;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
case CORE_INFO_CTL_LIST_DEINIT:
|
case CORE_INFO_CTL_LIST_DEINIT:
|
||||||
if (core_info_curr_list)
|
if (core_info_curr_list)
|
||||||
core_info_list_free(core_info_curr_list);
|
core_info_list_free(core_info_curr_list);
|
||||||
|
@ -29,7 +29,10 @@ enum core_info_state
|
|||||||
CORE_INFO_CTL_NONE = 0,
|
CORE_INFO_CTL_NONE = 0,
|
||||||
CORE_INFO_CTL_LIST_DEINIT,
|
CORE_INFO_CTL_LIST_DEINIT,
|
||||||
CORE_INFO_CTL_LIST_INIT,
|
CORE_INFO_CTL_LIST_INIT,
|
||||||
CORE_INFO_CTL_LIST_GET
|
CORE_INFO_CTL_LIST_GET,
|
||||||
|
CORE_INFO_CTL_CURRENT_CORE_FREE,
|
||||||
|
CORE_INFO_CTL_CURRENT_CORE_INIT,
|
||||||
|
CORE_INFO_CTL_CURRENT_CORE_GET
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
|
@ -1068,7 +1068,7 @@ static void menu_action_setting_disp_set_label(file_list_t* list,
|
|||||||
char buf[PATH_MAX_LENGTH];
|
char buf[PATH_MAX_LENGTH];
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
if (core_info_list_get_display_name(list, s, buf, sizeof(buf)))
|
if (core_info_list_get_display_name(list, s, buf, sizeof(buf)))
|
||||||
strlcpy(s, buf, len);
|
strlcpy(s, buf, len);
|
||||||
|
@ -299,7 +299,7 @@ static int playlist_association_left(unsigned type, const char *label,
|
|||||||
const char *path = path_basename(label);
|
const char *path = path_basename(label);
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
if (!list)
|
if (!list)
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -478,7 +478,7 @@ static int file_load_with_detect_core_wrapper(size_t idx, size_t entry_idx,
|
|||||||
fill_pathname_join(menu_path_new, menu->scratch2_buf, menu->scratch_buf,
|
fill_pathname_join(menu_path_new, menu->scratch2_buf, menu->scratch_buf,
|
||||||
sizeof(menu_path_new));
|
sizeof(menu_path_new));
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
def_info.data = list;
|
def_info.data = list;
|
||||||
def_info.dir = menu_path_new;
|
def_info.dir = menu_path_new;
|
||||||
@ -640,7 +640,7 @@ static int action_ok_playlist_entry(const char *path,
|
|||||||
bool found_associated_core = menu_playlist_find_associated_core(
|
bool found_associated_core = menu_playlist_find_associated_core(
|
||||||
path_base, new_core_path, sizeof(new_core_path));
|
path_base, new_core_path, sizeof(new_core_path));
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
if (!(core_info = core_info_find(list, new_core_path)))
|
if (!(core_info = core_info_find(list, new_core_path)))
|
||||||
found_associated_core = false;
|
found_associated_core = false;
|
||||||
@ -2041,7 +2041,7 @@ static int action_ok_load_archive_detect_core(const char *path,
|
|||||||
if (!menu_navigation_ctl(MENU_NAVIGATION_CTL_GET_SELECTION, &idx))
|
if (!menu_navigation_ctl(MENU_NAVIGATION_CTL_GET_SELECTION, &idx))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
def_info.data = list;
|
def_info.data = list;
|
||||||
def_info.dir = menu_path;
|
def_info.dir = menu_path;
|
||||||
|
@ -316,7 +316,7 @@ static int playlist_association_right(unsigned type, const char *label,
|
|||||||
const char *path = path_basename(label);
|
const char *path = path_basename(label);
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
if (!list)
|
if (!list)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -271,7 +271,7 @@ static int action_start_playlist_association(unsigned type, const char *label)
|
|||||||
settings_t *settings = config_get_ptr();
|
settings_t *settings = config_get_ptr();
|
||||||
const char *path = path_basename(label);
|
const char *path = path_basename(label);
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
if (!list)
|
if (!list)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -1333,7 +1333,7 @@ static int mui_list_push(void *data, void *userdata,
|
|||||||
menu_hash_to_str(MENU_LABEL_LOAD_CONTENT),
|
menu_hash_to_str(MENU_LABEL_LOAD_CONTENT),
|
||||||
MENU_SETTING_ACTION, 0, 0);
|
MENU_SETTING_ACTION, 0, 0);
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
if (core_info_list_num_info_files(list))
|
if (core_info_list_num_info_files(list))
|
||||||
{
|
{
|
||||||
menu_entries_push(info->list,
|
menu_entries_push(info->list,
|
||||||
|
@ -675,7 +675,7 @@ static int zarch_zui_render_lay_root_load(zui_t *zui, zui_tabbed_t *tabbed)
|
|||||||
if (!zui->load_dlist)
|
if (!zui->load_dlist)
|
||||||
{
|
{
|
||||||
core_info_t *core_info = NULL;
|
core_info_t *core_info = NULL;
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_GET, &core_info);
|
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, &core_info);
|
||||||
|
|
||||||
zui->load_dlist = dir_list_new(zui->load_cwd, core_info->supported_extensions, true, true);
|
zui->load_dlist = dir_list_new(zui->load_cwd, core_info->supported_extensions, true, true);
|
||||||
dir_list_sort(zui->load_dlist, true);
|
dir_list_sort(zui->load_dlist, true);
|
||||||
@ -752,7 +752,7 @@ static int zarch_zui_render_lay_root_load(zui_t *zui, zui_tabbed_t *tabbed)
|
|||||||
zui->pick_supported = 0;
|
zui->pick_supported = 0;
|
||||||
strncpy(zui->pick_content, path, sizeof(zui->pick_content)-1);
|
strncpy(zui->pick_content, path, sizeof(zui->pick_content)-1);
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
core_info_list_get_supported_cores(list, path,
|
core_info_list_get_supported_cores(list, path,
|
||||||
&zui->pick_cores, &zui->pick_supported);
|
&zui->pick_cores, &zui->pick_supported);
|
||||||
|
@ -277,7 +277,7 @@ static bool menu_content_find_first_core(void *data)
|
|||||||
* going to use the current core to load this. */
|
* going to use the current core to load this. */
|
||||||
if (menu_label_hash == MENU_LABEL_LOAD_CONTENT)
|
if (menu_label_hash == MENU_LABEL_LOAD_CONTENT)
|
||||||
{
|
{
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_GET, (void*)&info);
|
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, (void*)&info);
|
||||||
if (info)
|
if (info)
|
||||||
{
|
{
|
||||||
RARCH_LOG("Use the current core (%s) to load this content...\n",
|
RARCH_LOG("Use the current core (%s) to load this content...\n",
|
||||||
|
@ -163,7 +163,7 @@ static int menu_displaylist_parse_core_info(menu_displaylist_info_t *info)
|
|||||||
settings_t *settings = config_get_ptr();
|
settings_t *settings = config_get_ptr();
|
||||||
core_info_t *core_info = NULL;
|
core_info_t *core_info = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_GET, &core_info);
|
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_GET, &core_info);
|
||||||
|
|
||||||
if (!core_info || !core_info->config_data)
|
if (!core_info || !core_info->config_data)
|
||||||
{
|
{
|
||||||
@ -271,7 +271,7 @@ static int menu_displaylist_parse_core_info(menu_displaylist_info_t *info)
|
|||||||
{
|
{
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
core_info_list_update_missing_firmware(list, core_info->path,
|
core_info_list_update_missing_firmware(list, core_info->path,
|
||||||
settings->system_directory);
|
settings->system_directory);
|
||||||
@ -2194,7 +2194,7 @@ static int menu_displaylist_parse_generic(menu_displaylist_info_t *info, bool ho
|
|||||||
settings_t *settings = config_get_ptr();
|
settings_t *settings = config_get_ptr();
|
||||||
uint32_t hash_label = menu_hash_calculate(info->label);
|
uint32_t hash_label = menu_hash_calculate(info->label);
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
|
|
||||||
(void)device;
|
(void)device;
|
||||||
|
|
||||||
@ -2539,7 +2539,7 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type)
|
|||||||
rarch_system_info_t *system = NULL;
|
rarch_system_info_t *system = NULL;
|
||||||
core_info_list_t *list = NULL;
|
core_info_list_t *list = NULL;
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &list);
|
||||||
runloop_ctl(RUNLOOP_CTL_SYSTEM_INFO_GET, &system);
|
runloop_ctl(RUNLOOP_CTL_SYSTEM_INFO_GET, &system);
|
||||||
|
|
||||||
if (menu_driver_list_push(info, type))
|
if (menu_driver_list_push(info, type))
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
#include "menu_shader.h"
|
#include "menu_shader.h"
|
||||||
|
|
||||||
#include "../content.h"
|
#include "../content.h"
|
||||||
|
#include "../core_info.h"
|
||||||
#include "../general.h"
|
#include "../general.h"
|
||||||
#include "../system.h"
|
#include "../system.h"
|
||||||
#include "../defaults.h"
|
#include "../defaults.h"
|
||||||
@ -173,8 +174,8 @@ static void menu_free(menu_handle_t *menu)
|
|||||||
|
|
||||||
event_cmd_ctl(EVENT_CMD_HISTORY_DEINIT, NULL);
|
event_cmd_ctl(EVENT_CMD_HISTORY_DEINIT, NULL);
|
||||||
|
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_FREE, NULL);
|
core_info_ctl(CORE_INFO_CTL_LIST_DEINIT, NULL);
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_FREE, NULL);
|
core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_FREE, NULL);
|
||||||
|
|
||||||
free(menu);
|
free(menu);
|
||||||
}
|
}
|
||||||
@ -233,7 +234,7 @@ static void *menu_init(const void *data)
|
|||||||
if (!menu_entries_ctl(MENU_ENTRIES_CTL_INIT, NULL))
|
if (!menu_entries_ctl(MENU_ENTRIES_CTL_INIT, NULL))
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
if (!runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_INIT, NULL))
|
if (!core_info_ctl(CORE_INFO_CTL_CURRENT_CORE_INIT, NULL))
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
#ifdef HAVE_SHADER_MANAGER
|
#ifdef HAVE_SHADER_MANAGER
|
||||||
|
25
runloop.c
25
runloop.c
@ -435,7 +435,6 @@ bool runloop_ctl(enum runloop_ctl_state state, void *data)
|
|||||||
#ifdef HAVE_THREADS
|
#ifdef HAVE_THREADS
|
||||||
static slock_t *runloop_msg_queue_lock = NULL;
|
static slock_t *runloop_msg_queue_lock = NULL;
|
||||||
#endif
|
#endif
|
||||||
static core_info_t *core_info_current = NULL;
|
|
||||||
static msg_queue_t *runloop_msg_queue = NULL;
|
static msg_queue_t *runloop_msg_queue = NULL;
|
||||||
settings_t *settings = config_get_ptr();
|
settings_t *settings = config_get_ptr();
|
||||||
|
|
||||||
@ -487,30 +486,6 @@ bool runloop_ctl(enum runloop_ctl_state state, void *data)
|
|||||||
return true;
|
return true;
|
||||||
case RUNLOOP_CTL_HAS_CORE_OPTIONS:
|
case RUNLOOP_CTL_HAS_CORE_OPTIONS:
|
||||||
return runloop_system.core_options;
|
return runloop_system.core_options;
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_LIST_FREE:
|
|
||||||
return core_info_ctl(CORE_INFO_CTL_LIST_DEINIT, NULL);
|
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_LIST_INIT:
|
|
||||||
return core_info_ctl(CORE_INFO_CTL_LIST_INIT, NULL);
|
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_LIST_GET:
|
|
||||||
return core_info_ctl(CORE_INFO_CTL_LIST_GET, data);
|
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_FREE:
|
|
||||||
if (core_info_current)
|
|
||||||
free(core_info_current);
|
|
||||||
core_info_current = NULL;
|
|
||||||
return true;
|
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_INIT:
|
|
||||||
core_info_current = (core_info_t*)calloc(1, sizeof(core_info_t));
|
|
||||||
if (!core_info_current)
|
|
||||||
return false;
|
|
||||||
return true;
|
|
||||||
case RUNLOOP_CTL_CURRENT_CORE_GET:
|
|
||||||
{
|
|
||||||
core_info_t **core = (core_info_t**)data;
|
|
||||||
if (!core)
|
|
||||||
return false;
|
|
||||||
*core = core_info_current;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
case RUNLOOP_CTL_SYSTEM_INFO_GET:
|
case RUNLOOP_CTL_SYSTEM_INFO_GET:
|
||||||
{
|
{
|
||||||
rarch_system_info_t **system = (rarch_system_info_t**)data;
|
rarch_system_info_t **system = (rarch_system_info_t**)data;
|
||||||
|
@ -72,12 +72,6 @@ enum runloop_ctl_state
|
|||||||
RUNLOOP_CTL_SET_PERFCNT_ENABLE,
|
RUNLOOP_CTL_SET_PERFCNT_ENABLE,
|
||||||
RUNLOOP_CTL_UNSET_PERFCNT_ENABLE,
|
RUNLOOP_CTL_UNSET_PERFCNT_ENABLE,
|
||||||
RUNLOOP_CTL_IS_PERFCNT_ENABLE,
|
RUNLOOP_CTL_IS_PERFCNT_ENABLE,
|
||||||
RUNLOOP_CTL_CURRENT_CORE_LIST_FREE,
|
|
||||||
RUNLOOP_CTL_CURRENT_CORE_LIST_INIT,
|
|
||||||
RUNLOOP_CTL_CURRENT_CORE_LIST_GET,
|
|
||||||
RUNLOOP_CTL_CURRENT_CORE_FREE,
|
|
||||||
RUNLOOP_CTL_CURRENT_CORE_INIT,
|
|
||||||
RUNLOOP_CTL_CURRENT_CORE_GET,
|
|
||||||
RUNLOOP_CTL_FRONTEND_KEY_EVENT_GET,
|
RUNLOOP_CTL_FRONTEND_KEY_EVENT_GET,
|
||||||
RUNLOOP_CTL_KEY_EVENT_GET,
|
RUNLOOP_CTL_KEY_EVENT_GET,
|
||||||
RUNLOOP_CTL_DATA_DEINIT,
|
RUNLOOP_CTL_DATA_DEINIT,
|
||||||
|
@ -152,7 +152,7 @@ struct string_list *string_list_new_special(enum string_list_type type,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STRING_LIST_SUPPORTED_CORES_PATHS:
|
case STRING_LIST_SUPPORTED_CORES_PATHS:
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &core_info_list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list);
|
||||||
|
|
||||||
core_info_list_get_supported_cores(core_info_list,
|
core_info_list_get_supported_cores(core_info_list,
|
||||||
(const char*)data, &core_info, list_size);
|
(const char*)data, &core_info, list_size);
|
||||||
@ -174,7 +174,7 @@ struct string_list *string_list_new_special(enum string_list_type type,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STRING_LIST_CORES_PATHS:
|
case STRING_LIST_CORES_PATHS:
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &core_info_list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list);
|
||||||
|
|
||||||
for (i = 0; i < core_info_list_num_info_files(core_info_list); i++)
|
for (i = 0; i < core_info_list_num_info_files(core_info_list); i++)
|
||||||
{
|
{
|
||||||
@ -190,7 +190,7 @@ struct string_list *string_list_new_special(enum string_list_type type,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STRING_LIST_SUPPORTED_CORES_NAMES:
|
case STRING_LIST_SUPPORTED_CORES_NAMES:
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &core_info_list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list);
|
||||||
core_info_list_get_supported_cores(core_info_list,
|
core_info_list_get_supported_cores(core_info_list,
|
||||||
(const char*)data, &core_info, list_size);
|
(const char*)data, &core_info, list_size);
|
||||||
|
|
||||||
@ -211,7 +211,7 @@ struct string_list *string_list_new_special(enum string_list_type type,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STRING_LIST_CORES_NAMES:
|
case STRING_LIST_CORES_NAMES:
|
||||||
runloop_ctl(RUNLOOP_CTL_CURRENT_CORE_LIST_GET, &core_info_list);
|
core_info_ctl(CORE_INFO_CTL_LIST_GET, &core_info_list);
|
||||||
for (i = 0; i < core_info_list_num_info_files(core_info_list); i++)
|
for (i = 0; i < core_info_list_num_info_files(core_info_list); i++)
|
||||||
{
|
{
|
||||||
const char *opt = NULL;
|
const char *opt = NULL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user