diff --git a/configuration.c b/configuration.c index 74e67498fb..90eab2ac0f 100644 --- a/configuration.c +++ b/configuration.c @@ -1981,9 +1981,9 @@ static void config_load_core_specific(void) *path_core_specific_config = '\0'; - if (string_is_empty(settings->path.libretro)) + if (string_is_empty(config_get_active_core_path())) { - RARCH_WARN("Libretro path not set, cannot load core-specific config file...\n"); + RARCH_WARN("Active core path not set, cannot load core-specific config file...\n"); return; } @@ -3231,6 +3231,12 @@ bool config_replace(char *path) return true; } +const char *config_get_active_core_path(void) +{ + settings_t *settings = config_get_ptr(); + return settings->path.libretro; +} + const char *config_get_active_path(void) { settings_t *settings = config_get_ptr(); diff --git a/configuration.h b/configuration.h index 5d2ad7e6cf..bc561e5a60 100644 --- a/configuration.h +++ b/configuration.h @@ -598,6 +598,8 @@ void config_free(void); const char *config_get_active_path(void); +const char *config_get_active_core_path(void); + void config_free_state(void); settings_t *config_get_ptr(void); diff --git a/dynamic.c b/dynamic.c index 807a18bfe9..5d74c15e68 100644 --- a/dynamic.c +++ b/dynamic.c @@ -322,7 +322,7 @@ static void load_dynamic_core(void) retroarch_fail(1, "init_libretro_sym()"); } - if (!*settings->path.libretro) + if (string_is_empty(settings->path.libretro)) { RARCH_ERR("RetroArch is built for dynamic libretro cores, but " "libretro_path is not set. Cannot continue.\n");