diff options
Diffstat (limited to 'src/frontend_common/config.cpp')
| -rw-r--r-- | src/frontend_common/config.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/frontend_common/config.cpp b/src/frontend_common/config.cpp index 94ec349651..669e578b33 100644 --- a/src/frontend_common/config.cpp +++ b/src/frontend_common/config.cpp @@ -290,6 +290,13 @@ void Config::ReadDataStorageValues() { setPath(EdenPath::DumpDir, "dump_directory"); setPath(EdenPath::TASDir, "tas_directory"); + const auto save_dir_setting = ReadStringSetting(std::string("save_directory")); + if (save_dir_setting.empty()) { + SetEdenPath(EdenPath::SaveDir, GetEdenPathString(EdenPath::NANDDir)); + } else { + SetEdenPath(EdenPath::SaveDir, save_dir_setting); + } + ReadCategory(Settings::Category::DataStorage); EndGroup(); @@ -583,6 +590,16 @@ void Config::SaveDataStorageValues() { writePath("dump_directory", EdenPath::DumpDir); writePath("tas_directory", EdenPath::TASDir); + const auto save_path = FS::GetEdenPathString(EdenPath::SaveDir); + const auto nand_path = FS::GetEdenPathString(EdenPath::NANDDir); + if (save_path == nand_path) { + WriteStringSetting(std::string("save_directory"), std::string(""), + std::make_optional(std::string(""))); + } else { + WriteStringSetting(std::string("save_directory"), save_path, + std::make_optional(std::string(""))); + } + WriteCategory(Settings::Category::DataStorage); EndGroup(); |
