diff --git a/configuration.c b/configuration.c index 012a94339b..ba0be37f95 100644 --- a/configuration.c +++ b/configuration.c @@ -2192,7 +2192,7 @@ void config_set_defaults(void) g_defaults.path.buildbot_server_url, sizeof(settings->paths.network_buildbot_url)); if (!string_is_empty(g_defaults.path.core)) - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, g_defaults.path.core); + path_set(RARCH_PATH_CORE, g_defaults.path.core); if (!string_is_empty(g_defaults.dirs[DEFAULT_DIR_DATABASE])) strlcpy(settings->paths.path_content_database, g_defaults.dirs[DEFAULT_DIR_DATABASE], diff --git a/frontend/drivers/platform_gx.c b/frontend/drivers/platform_gx.c index 0e47dd0d5d..b5cad2e5f5 100644 --- a/frontend/drivers/platform_gx.c +++ b/frontend/drivers/platform_gx.c @@ -411,7 +411,7 @@ static void frontend_gx_process_args(int *argc, char *argv[]) char path[PATH_MAX_LENGTH] = {0}; strlcpy(path, strrchr(argv[0], '/') + 1, sizeof(path)); if (filestream_exists(path)) - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, path); + path_set(RARCH_PATH_CORE, path); } #endif } diff --git a/frontend/drivers/platform_ps3.c b/frontend/drivers/platform_ps3.c index 94299c5760..b93cb896ac 100644 --- a/frontend/drivers/platform_ps3.c +++ b/frontend/drivers/platform_ps3.c @@ -602,7 +602,7 @@ static void frontend_ps3_process_args(int *argc, char *argv[]) char path[PATH_MAX_LENGTH] = {0}; strlcpy(path, argv[0], sizeof(path)); if (filestream_exists(path)) - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, path); + path_set(RARCH_PATH_CORE, path); } #endif } diff --git a/gfx/common/win32_common.c b/gfx/common/win32_common.c index 29717d1b86..245af75ee4 100644 --- a/gfx/common/win32_common.c +++ b/gfx/common/win32_common.c @@ -344,7 +344,7 @@ INT_PTR_COMPAT CALLBACK PickCoreProc(HWND hDlg, UINT message, core_info_list_get_supported_cores(core_info_list, path_get(RARCH_PATH_CONTENT), &core_info, &list_size); info = (const core_info_t*)&core_info[lbItem]; - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH,info->path); + path_set(RARCH_PATH_CORE, info->path); } break; } diff --git a/retroarch.c b/retroarch.c index 11270a1859..b7098e8aba 100644 --- a/retroarch.c +++ b/retroarch.c @@ -1528,8 +1528,7 @@ static void retroarch_parse_input_and_config(int argc, char *argv[]) } else if (filestream_exists(optarg)) { - - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, optarg); + path_set(RARCH_PATH_CORE, optarg); retroarch_override_setting_set(RARCH_OVERRIDE_SETTING_LIBRETRO, NULL); /* We requested explicit core, so use PLAIN core type. */ @@ -2571,8 +2570,6 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data) runloop_pending_windowed_scale = *idx; } break; - case RARCH_CTL_SET_LIBRETRO_PATH: - return path_set(RARCH_PATH_CORE, (const char*)data); case RARCH_CTL_FRAME_TIME_FREE: memset(&runloop_frame_time, 0, sizeof(struct retro_frame_time_callback)); diff --git a/retroarch.h b/retroarch.h index b4b41fd7ec..2b89b6e078 100644 --- a/retroarch.h +++ b/retroarch.h @@ -140,8 +140,6 @@ enum rarch_ctl_state RARCH_CTL_SET_NONBLOCK_FORCED, RARCH_CTL_UNSET_NONBLOCK_FORCED, - RARCH_CTL_SET_LIBRETRO_PATH, - RARCH_CTL_IS_PAUSED, RARCH_CTL_SET_PAUSED, diff --git a/tasks/task_content.c b/tasks/task_content.c index 27ae6b6991..ffb5997cd7 100644 --- a/tasks/task_content.c +++ b/tasks/task_content.c @@ -1349,8 +1349,7 @@ bool task_push_load_content_from_playlist_from_menu( if (!string_is_empty(settings->paths.directory_system)) content_ctx.directory_system = strdup(settings->paths.directory_system); - /* Set libretro core path */ - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, (void*)core_path); + path_set(RARCH_PATH_CORE, core_path); /* Is content required by this core? */ if (fullpath) @@ -1502,8 +1501,7 @@ bool task_push_load_new_core( retro_task_callback_t cb, void *user_data) { - /* Set libretro core path */ - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, (void*)core_path); + path_set(RARCH_PATH_CORE, core_path); /* Load core */ command_event(CMD_EVENT_LOAD_CORE, NULL); @@ -1573,11 +1571,8 @@ bool task_push_load_content_with_new_core_from_menu( if (!string_is_empty(settings->paths.directory_system)) content_ctx.directory_system = strdup(settings->paths.directory_system); - /* Set content path */ path_set(RARCH_PATH_CONTENT, fullpath); - - /* Set libretro core path */ - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, (void*)core_path); + path_set(RARCH_PATH_CORE, core_path); #ifdef HAVE_DYNAMIC /* Load core */ @@ -1756,11 +1751,8 @@ bool task_push_load_content_with_new_core_from_companion_ui( { global_t *global = global_get_ptr(); - /* Set content path */ path_set(RARCH_PATH_CONTENT, fullpath); - - /* Set libretro core path */ - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, (void*)core_path); + path_set(RARCH_PATH_CORE, core_path); #ifdef HAVE_DYNAMIC command_event(CMD_EVENT_LOAD_CORE, NULL); #endif @@ -1837,7 +1829,6 @@ bool task_push_load_content_with_current_core_from_companion_ui( retro_task_callback_t cb, void *user_data) { - /* Set content path */ path_set(RARCH_PATH_CONTENT, fullpath); /* Load content */ @@ -1860,7 +1851,6 @@ bool task_push_load_content_with_core_from_menu( retro_task_callback_t cb, void *user_data) { - /* Set content path */ path_set(RARCH_PATH_CONTENT, fullpath); /* Load content */ diff --git a/ui/drivers/qt/ui_qt_load_core_window.cpp b/ui/drivers/qt/ui_qt_load_core_window.cpp index 2532713164..0f6bfe9943 100644 --- a/ui/drivers/qt/ui_qt_load_core_window.cpp +++ b/ui/drivers/qt/ui_qt_load_core_window.cpp @@ -24,16 +24,18 @@ extern "C" { #endif +#include +#include +#include + #include "../../../core_info.h" #include "../../../verbosity.h" #include "../../../configuration.h" #include "../../../msg_hash.h" +#include "../../../paths.h" #include "../../../retroarch.h" #include "../../../command.h" #include "../../../frontend/frontend_driver.h" -#include -#include -#include #ifndef CXX_BUILD } @@ -127,8 +129,7 @@ void LoadCoreWindow::loadCore(const char *path) qApp->processEvents(); #ifdef HAVE_DYNAMIC - /* const-removing cast is safe here because the path is never written to */ - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, const_cast(path)); + path_set(RARCH_PATH_CORE, path); command_event(CMD_EVENT_CORE_INFO_DEINIT, NULL); command_event(CMD_EVENT_CORE_INFO_INIT, NULL); diff --git a/ui/drivers/ui_cocoa.m b/ui/drivers/ui_cocoa.m index 42c0f16655..78f5d81d5d 100644 --- a/ui/drivers/ui_cocoa.m +++ b/ui/drivers/ui_cocoa.m @@ -548,7 +548,7 @@ static void open_core_handler(ui_browser_window_state_t *state, bool result) settings_t *settings = config_get_ptr(); - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, (void*)state->result); + path_set(RARCH_PATH_CORE, state->result); ui_companion_event_command(CMD_EVENT_LOAD_CORE); if (info && info->load_no_content diff --git a/ui/drivers/ui_win32.c b/ui/drivers/ui_win32.c index 3811f365ae..fc4a127f0f 100644 --- a/ui/drivers/ui_win32.c +++ b/ui/drivers/ui_win32.c @@ -189,7 +189,7 @@ LRESULT win32_menu_loop(HWND owner, WPARAM wparam) switch (mode) { case ID_M_LOAD_CORE: - rarch_ctl(RARCH_CTL_SET_LIBRETRO_PATH, win32_file); + path_set(RARCH_PATH_CORE, win32_file); cmd = CMD_EVENT_LOAD_CORE; break; case ID_M_LOAD_CONTENT: