Compare commits

..

1 Commits

2 changed files with 5 additions and 5 deletions
+1 -5
View File
@@ -57,11 +57,7 @@ std::string GetFutureSaveDataPath(SaveDataSpaceId space_id, SaveDataType type, u
SaveDataFactory::SaveDataFactory(Core::System& system_, ProgramId program_id_, SaveDataFactory::SaveDataFactory(Core::System& system_, ProgramId program_id_,
VirtualDir save_directory_) VirtualDir save_directory_)
: system{system_}, program_id{program_id_}, dir{std::move(save_directory_)} { : system{system_}, program_id{program_id_}, dir{std::move(save_directory_)} {}
// Delete all temporary storages
// On hardware, it is expected that temporary storage be empty at first use.
dir->DeleteSubdirectoryRecursive("temp");
}
SaveDataFactory::~SaveDataFactory() = default; SaveDataFactory::~SaveDataFactory() = default;
@@ -336,6 +336,10 @@ Result FileSystemController::RegisterProcess(
ProcessId process_id, ProgramId program_id, ProcessId process_id, ProgramId program_id,
std::shared_ptr<FileSys::RomFSFactory>&& romfs_factory) { std::shared_ptr<FileSys::RomFSFactory>&& romfs_factory) {
std::scoped_lock lk{registration_lock}; std::scoped_lock lk{registration_lock};
if (registrations.empty()) {
const auto save_directory = system.GetFilesystem()->OpenDirectory(Common::FS::GetEdenPathString(Common::FS::EdenPath::SaveDir), FileSys::OpenMode::ReadWrite);
if (save_directory != nullptr) save_directory->DeleteSubdirectoryRecursive("temp");
}
registrations.emplace(process_id, Registration{ registrations.emplace(process_id, Registration{
.program_id = program_id, .program_id = program_id,