diff options
| author | Matthew Parlane <parlane@gmail.com> | 2013-08-26 00:50:57 +0000 |
|---|---|---|
| committer | Matthew Parlane <parlane@gmail.com> | 2013-08-26 00:50:57 +0000 |
| commit | 15f8603d1ffabcdb407e166803323227461bf9ff (patch) | |
| tree | 861472658926f9ed6c2f9a5037aacd4ea932adaa /Source/Core/Common | |
| parent | 72e0423f8ba46f0e24999bd65392faa40f74f1a4 (diff) | |
| parent | 0e8f9d8abcef26a4b17e7a38b001efbae0f83e8d (diff) | |
Merge branch 'master' into wii-network
Conflicts:
Source/Core/Common/Src/CommonPaths.h
Source/Core/Common/Src/FileUtil.cpp
Diffstat (limited to 'Source/Core/Common')
| -rw-r--r-- | Source/Core/Common/Src/CommonPaths.h | 30 | ||||
| -rw-r--r-- | Source/Core/Common/Src/FileUtil.cpp | 88 |
2 files changed, 91 insertions, 27 deletions
diff --git a/Source/Core/Common/Src/CommonPaths.h b/Source/Core/Common/Src/CommonPaths.h index 828aad3bbf..38640723e5 100644 --- a/Source/Core/Common/Src/CommonPaths.h +++ b/Source/Core/Common/Src/CommonPaths.h @@ -61,29 +61,29 @@ #define JAP_DIR "JAP" // Subdirs in the User dir returned by GetUserPath(D_USER_IDX) -#define GC_USER_DIR "GC" +#define GC_USER_DIR "GC" #define WII_USER_DIR "Wii" -#define CONFIG_DIR "Config" +#define CONFIG_DIR "Config" #define GAMECONFIG_DIR "GameConfig" -#define MAPS_DIR "Maps" -#define CACHE_DIR "Cache" +#define MAPS_DIR "Maps" +#define CACHE_DIR "Cache" #define SHADERCACHE_DIR "ShaderCache" #define STATESAVES_DIR "StateSaves" #define SCREENSHOTS_DIR "ScreenShots" -#define OPENCL_DIR "OpenCL" -#define LOAD_DIR "Load" +#define OPENCL_DIR "OpenCL" +#define LOAD_DIR "Load" #define HIRES_TEXTURES_DIR LOAD_DIR DIR_SEP "Textures" -#define DUMP_DIR "Dump" -#define DUMP_TEXTURES_DIR DUMP_DIR DIR_SEP "Textures" -#define DUMP_FRAMES_DIR DUMP_DIR DIR_SEP "Frames" -#define DUMP_AUDIO_DIR DUMP_DIR DIR_SEP "Audio" -#define DUMP_DSP_DIR DUMP_DIR DIR_SEP "DSP" -#define LOGS_DIR "Logs" -#define MAIL_LOGS_DIR LOGS_DIR DIR_SEP "Mail" +#define DUMP_DIR "Dump" +#define DUMP_TEXTURES_DIR "Textures" +#define DUMP_FRAMES_DIR "Frames" +#define DUMP_AUDIO_DIR "Audio" +#define DUMP_DSP_DIR "DSP" +#define LOGS_DIR "Logs" +#define MAIL_LOGS_DIR "Mail" #define SHADERS_DIR "Shaders" #define WII_SYSCONF_DIR "shared2" DIR_SEP "sys" -#define WII_WC24CONF_DIR "shared2" DIR_SEP "wc24" -#define THEMES_DIR "Themes" +#define WII_WC24CONF_DIR "shared2" DIR_SEP "wc24" +#define THEMES_DIR "Themes" // Filenames // Files in the directory returned by GetUserPath(D_CONFIG_IDX) diff --git a/Source/Core/Common/Src/FileUtil.cpp b/Source/Core/Common/Src/FileUtil.cpp index 4bd19d77c4..24f853c0c4 100644 --- a/Source/Core/Common/Src/FileUtil.cpp +++ b/Source/Core/Common/Src/FileUtil.cpp @@ -689,15 +689,15 @@ const std::string& GetUserPath(const unsigned int DirIDX, const std::string &new paths[D_OPENCL_IDX] = paths[D_USER_IDX] + OPENCL_DIR DIR_SEP; paths[D_HIRESTEXTURES_IDX] = paths[D_USER_IDX] + HIRES_TEXTURES_DIR DIR_SEP; paths[D_DUMP_IDX] = paths[D_USER_IDX] + DUMP_DIR DIR_SEP; - paths[D_DUMPFRAMES_IDX] = paths[D_USER_IDX] + DUMP_FRAMES_DIR DIR_SEP; - paths[D_DUMPAUDIO_IDX] = paths[D_USER_IDX] + DUMP_AUDIO_DIR DIR_SEP; - paths[D_DUMPTEXTURES_IDX] = paths[D_USER_IDX] + DUMP_TEXTURES_DIR DIR_SEP; - paths[D_DUMPDSP_IDX] = paths[D_USER_IDX] + DUMP_DSP_DIR DIR_SEP; + paths[D_DUMPFRAMES_IDX] = paths[D_DUMP_IDX] + DUMP_FRAMES_DIR DIR_SEP; + paths[D_DUMPAUDIO_IDX] = paths[D_DUMP_IDX] + DUMP_AUDIO_DIR DIR_SEP; + paths[D_DUMPTEXTURES_IDX] = paths[D_DUMP_IDX] + DUMP_TEXTURES_DIR DIR_SEP; + paths[D_DUMPDSP_IDX] = paths[D_DUMP_IDX] + DUMP_DSP_DIR DIR_SEP; paths[D_LOGS_IDX] = paths[D_USER_IDX] + LOGS_DIR DIR_SEP; - paths[D_MAILLOGS_IDX] = paths[D_USER_IDX] + MAIL_LOGS_DIR DIR_SEP; - paths[D_THEMES_IDX] = paths[D_USER_IDX] + THEMES_DIR DIR_SEP; + paths[D_MAILLOGS_IDX] = paths[D_LOGS_IDX] + MAIL_LOGS_DIR DIR_SEP; paths[D_WIISYSCONF_IDX] = paths[D_WIIUSER_IDX] + WII_SYSCONF_DIR DIR_SEP; paths[D_WIIWC24_IDX] = paths[D_WIIUSER_IDX] + WII_WC24CONF_DIR DIR_SEP; + paths[D_THEMES_IDX] = paths[D_USER_IDX] + THEMES_DIR DIR_SEP; paths[F_DOLPHINCONFIG_IDX] = paths[D_CONFIG_IDX] + DOLPHIN_CONFIG; paths[F_DEBUGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + DEBUGGER_CONFIG; paths[F_LOGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + LOGGER_CONFIG; @@ -711,17 +711,80 @@ const std::string& GetUserPath(const unsigned int DirIDX, const std::string &new if (!newPath.empty()) { - if(DirIDX != D_WIIROOT_IDX) - PanicAlert("Trying to change user path other than Wii root"); - if (!File::IsDirectory(newPath)) { - WARN_LOG(COMMON, "Invalid path specified %s, Wii user path will be set to default", newPath.c_str()); - paths[D_WIIROOT_IDX] = paths[D_USER_IDX] + WII_USER_DIR; + WARN_LOG(COMMON, "Invalid path specified %s", newPath.c_str()); + return paths[DirIDX]; } else { - paths[D_WIIROOT_IDX] = newPath; + paths[DirIDX] = newPath; + } + + switch (DirIDX) + { + case D_WIIROOT_IDX: + paths[D_WIIUSER_IDX] = paths[D_WIIROOT_IDX] + DIR_SEP; + paths[D_WIISYSCONF_IDX] = paths[D_WIIUSER_IDX] + WII_SYSCONF_DIR + DIR_SEP; + paths[F_WIISYSCONF_IDX] = paths[D_WIISYSCONF_IDX] + WII_SYSCONF; + break; + + case D_USER_IDX: + paths[D_GCUSER_IDX] = paths[D_USER_IDX] + GC_USER_DIR DIR_SEP; + paths[D_WIIROOT_IDX] = paths[D_USER_IDX] + WII_USER_DIR; + paths[D_WIIUSER_IDX] = paths[D_WIIROOT_IDX] + DIR_SEP; + paths[D_CONFIG_IDX] = paths[D_USER_IDX] + CONFIG_DIR DIR_SEP; + paths[D_GAMECONFIG_IDX] = paths[D_USER_IDX] + GAMECONFIG_DIR DIR_SEP; + paths[D_MAPS_IDX] = paths[D_USER_IDX] + MAPS_DIR DIR_SEP; + paths[D_CACHE_IDX] = paths[D_USER_IDX] + CACHE_DIR DIR_SEP; + paths[D_SHADERCACHE_IDX] = paths[D_USER_IDX] + SHADERCACHE_DIR DIR_SEP; + paths[D_SHADERS_IDX] = paths[D_USER_IDX] + SHADERS_DIR DIR_SEP; + paths[D_STATESAVES_IDX] = paths[D_USER_IDX] + STATESAVES_DIR DIR_SEP; + paths[D_SCREENSHOTS_IDX] = paths[D_USER_IDX] + SCREENSHOTS_DIR DIR_SEP; + paths[D_OPENCL_IDX] = paths[D_USER_IDX] + OPENCL_DIR DIR_SEP; + paths[D_HIRESTEXTURES_IDX] = paths[D_USER_IDX] + HIRES_TEXTURES_DIR DIR_SEP; + paths[D_DUMP_IDX] = paths[D_USER_IDX] + DUMP_DIR DIR_SEP; + paths[D_DUMPFRAMES_IDX] = paths[D_DUMP_IDX] + DUMP_FRAMES_DIR DIR_SEP; + paths[D_DUMPAUDIO_IDX] = paths[D_DUMP_IDX] + DUMP_AUDIO_DIR DIR_SEP; + paths[D_DUMPTEXTURES_IDX] = paths[D_DUMP_IDX] + DUMP_TEXTURES_DIR DIR_SEP; + paths[D_DUMPDSP_IDX] = paths[D_DUMP_IDX] + DUMP_DSP_DIR DIR_SEP; + paths[D_LOGS_IDX] = paths[D_USER_IDX] + LOGS_DIR DIR_SEP; + paths[D_MAILLOGS_IDX] = paths[D_LOGS_IDX] + MAIL_LOGS_DIR DIR_SEP; + paths[D_WIISYSCONF_IDX] = paths[D_WIIUSER_IDX] + WII_SYSCONF_DIR DIR_SEP; + paths[D_THEMES_IDX] = paths[D_USER_IDX] + THEMES_DIR DIR_SEP; + paths[F_DOLPHINCONFIG_IDX] = paths[D_CONFIG_IDX] + DOLPHIN_CONFIG; + paths[F_DEBUGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + DEBUGGER_CONFIG; + paths[F_LOGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + LOGGER_CONFIG; + paths[F_MAINLOG_IDX] = paths[D_LOGS_IDX] + MAIN_LOG; + paths[F_WIISYSCONF_IDX] = paths[D_WIISYSCONF_IDX] + WII_SYSCONF; + paths[F_RAMDUMP_IDX] = paths[D_DUMP_IDX] + RAM_DUMP; + paths[F_ARAMDUMP_IDX] = paths[D_DUMP_IDX] + ARAM_DUMP; + paths[F_FAKEVMEMDUMP_IDX] = paths[D_DUMP_IDX] + FAKEVMEM_DUMP; + paths[F_GCSRAM_IDX] = paths[D_GCUSER_IDX] + GC_SRAM; + break; + + case D_CONFIG_IDX: + paths[F_DOLPHINCONFIG_IDX] = paths[D_CONFIG_IDX] + DOLPHIN_CONFIG; + paths[F_DEBUGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + DEBUGGER_CONFIG; + paths[F_LOGGERCONFIG_IDX] = paths[D_CONFIG_IDX] + LOGGER_CONFIG; + break; + + case D_GCUSER_IDX: + paths[F_GCSRAM_IDX] = paths[D_GCUSER_IDX] + GC_SRAM; + break; + + case D_DUMP_IDX: + paths[D_DUMPFRAMES_IDX] = paths[D_DUMP_IDX] + DUMP_FRAMES_DIR DIR_SEP; + paths[D_DUMPAUDIO_IDX] = paths[D_DUMP_IDX] + DUMP_AUDIO_DIR DIR_SEP; + paths[D_DUMPTEXTURES_IDX] = paths[D_DUMP_IDX] + DUMP_TEXTURES_DIR DIR_SEP; + paths[D_DUMPDSP_IDX] = paths[D_DUMP_IDX] + DUMP_DSP_DIR DIR_SEP; + paths[F_RAMDUMP_IDX] = paths[D_DUMP_IDX] + RAM_DUMP; + paths[F_ARAMDUMP_IDX] = paths[D_DUMP_IDX] + ARAM_DUMP; + paths[F_FAKEVMEMDUMP_IDX] = paths[D_DUMP_IDX] + FAKEVMEM_DUMP; + break; + case D_LOGS_IDX: + paths[D_MAILLOGS_IDX] = paths[D_LOGS_IDX] + MAIL_LOGS_DIR DIR_SEP; + paths[F_MAINLOG_IDX] = paths[D_LOGS_IDX] + MAIN_LOG; } paths[D_WIIUSER_IDX] = paths[D_WIIROOT_IDX] + DIR_SEP; @@ -729,6 +792,7 @@ const std::string& GetUserPath(const unsigned int DirIDX, const std::string &new paths[D_WIISYSCONF_IDX] = paths[D_WIIUSER_IDX] + WII_SYSCONF_DIR + DIR_SEP; paths[F_WIISYSCONF_IDX] = paths[D_WIISYSCONF_IDX] + WII_SYSCONF; } + return paths[DirIDX]; } |
