diff --git a/frontend/frontend.c b/frontend/frontend.c index dadd537284..46316caebc 100644 --- a/frontend/frontend.c +++ b/frontend/frontend.c @@ -153,6 +153,10 @@ static void check_defaults_dirs(void) path_mkdir(g_defaults.content_history_dir); if (*g_defaults.extraction_dir) path_mkdir(g_defaults.extraction_dir); + if (*g_defaults.database_dir) + path_mkdir(g_defaults.database_dir); + if (*g_defaults.cursor_dir) + path_mkdir(g_defaults.cursor_dir); } static void history_playlist_push(content_playlist_t *playlist, diff --git a/general.h b/general.h index 712641e9d9..b7d7ca71cd 100644 --- a/general.h +++ b/general.h @@ -116,6 +116,8 @@ struct defaults char playlist_dir[PATH_MAX_LENGTH]; char content_history_dir[PATH_MAX_LENGTH]; char extraction_dir[PATH_MAX_LENGTH]; + char database_dir[PATH_MAX_LENGTH]; + char cursor_dir[PATH_MAX_LENGTH]; struct { diff --git a/settings.c b/settings.c index 0d2192cfff..5604d75d0e 100644 --- a/settings.c +++ b/settings.c @@ -641,6 +641,12 @@ static void config_set_defaults(void) if (*g_defaults.core_path) strlcpy(g_settings.libretro, g_defaults.core_path, sizeof(g_settings.libretro)); + if (*g_defaults.database_dir) + strlcpy(g_settings.content_database, g_defaults.database_dir, + sizeof(g_settings.content_database)); + if (*g_defaults.cursor_dir) + strlcpy(g_settings.cursor_directory, g_defaults.cursor_dir, + sizeof(g_settings.cursor_directory)); if (*g_defaults.core_info_dir) fill_pathname_expand_special(g_settings.libretro_info_path, g_defaults.core_info_dir, sizeof(g_settings.libretro_info_path));