diff --git a/src/core/libraries/save_data/dialog/savedatadialog_ui.cpp b/src/core/libraries/save_data/dialog/savedatadialog_ui.cpp index 05df67eeb..006a4a326 100644 --- a/src/core/libraries/save_data/dialog/savedatadialog_ui.cpp +++ b/src/core/libraries/save_data/dialog/savedatadialog_ui.cpp @@ -8,6 +8,7 @@ #include "common/elf_info.h" #include "common/singleton.h" #include "common/string_util.h" +#include "core/file_format/psf.h" #include "core/file_sys/fs.h" #include "core/libraries/save_data/save_instance.h" #include "imgui/imgui_std.h" @@ -66,7 +67,9 @@ SaveDialogState::SaveDialogState(const OrbisSaveDataDialogParam& param) { this->enable_back = {param.optionParam->back == OptionBack::ENABLE}; } - const auto& game_serial = Common::ElfInfo::Instance().GameSerial(); + const auto& game_serial = Common::Singleton::Instance() + ->GetString("INSTALL_DIR_SAVEDATA") + .value_or(ElfInfo::Instance().GameSerial()); const auto item = param.items; this->user_id = item->userId; diff --git a/src/core/libraries/save_data/save_memory.cpp b/src/core/libraries/save_data/save_memory.cpp index ab3ce2d4f..4080362eb 100644 --- a/src/core/libraries/save_data/save_memory.cpp +++ b/src/core/libraries/save_data/save_memory.cpp @@ -94,7 +94,7 @@ std::filesystem::path GetSavePath(OrbisUserServiceUserId user_id, u32 slot_id, if (slot_id > 0) { dir += std::to_string(slot_id); } - return SaveInstance::MakeDirSavePath(user_id, Common::ElfInfo::Instance().GameSerial(), dir); + return SaveInstance::MakeDirSavePath(user_id, game_serial, dir); } size_t SetupSaveMemory(OrbisUserServiceUserId user_id, u32 slot_id, std::string_view game_serial,