From ed42467e87c7abb15f722228a50a28e3f184ea97 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Thu, 30 Jun 2016 10:58:50 +0200 Subject: Fall back to default theme when the configured theme doesn't exist --- Source/Core/Common/FileUtil.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'Source/Core/Common/FileUtil.cpp') diff --git a/Source/Core/Common/FileUtil.cpp b/Source/Core/Common/FileUtil.cpp index 8317550297..564ab58d8f 100644 --- a/Source/Core/Common/FileUtil.cpp +++ b/Source/Core/Common/FileUtil.cpp @@ -866,12 +866,16 @@ void SetUserPath(unsigned int dir_index, const std::string& path) std::string GetThemeDir(const std::string& theme_name) { std::string dir = File::GetUserPath(D_THEMES_IDX) + theme_name + "/"; + if (File::Exists(dir)) + return dir; - // If theme does not exist in user's dir load from shared directory - if (!File::Exists(dir)) - dir = GetSysDirectory() + THEMES_DIR "/" + theme_name + "/"; + // If the theme doesn't exist in the user dir, load from shared directory + dir = GetSysDirectory() + THEMES_DIR "/" + theme_name + "/"; + if (File::Exists(dir)) + return dir; - return dir; + // If the theme doesn't exist at all, load the default theme + return GetSysDirectory() + THEMES_DIR "/" DEFAULT_THEME_DIR "/"; } bool WriteStringToFile(const std::string& str, const std::string& filename) -- cgit v1.2.3