aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/hle/service/fs/archive.cpp
diff options
context:
space:
mode:
authorGravatar Subv <subv2112@gmail.com>2014-12-17 23:44:32 -0500
committerGravatar Subv <subv2112@gmail.com>2014-12-17 23:44:32 -0500
commitbec527fa246a427e1e9628a251bd410087fd7113 (patch)
tree00fbe8e11efc859e4233ca8e28ff9902a80252bd /src/core/hle/service/fs/archive.cpp
parent94a103a00080f3f8f9ca9348ec0c5e819c6313e1 (diff)
SaveData: Implemented the SystemSaveData archive.
It will be stored in the /syssavedata folder. This archive is user by various Services and possibly games via the FS:U service.
Diffstat (limited to 'src/core/hle/service/fs/archive.cpp')
-rw-r--r--src/core/hle/service/fs/archive.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/hle/service/fs/archive.cpp b/src/core/hle/service/fs/archive.cpp
index 9c383473..d06f955d 100644
--- a/src/core/hle/service/fs/archive.cpp
+++ b/src/core/hle/service/fs/archive.cpp
@@ -419,6 +419,15 @@ void ArchiveInit() {
CreateArchive(std::move(sdmc_archive), ArchiveIdCode::SDMC);
else
LOG_ERROR(Service_FS, "Can't instantiate SDMC archive with path %s", sdmc_directory.c_str());
+
+ std::string systemsavedata_directory = FileUtil::GetUserPath(D_SYSSAVEDATA_IDX);
+ auto systemsavedata_archive = std::make_unique<FileSys::Archive_SDMC>(systemsavedata_directory);
+ if (systemsavedata_archive->Initialize()) {
+ CreateArchive(std::move(sdmc_archive), ArchiveIdCode::SystemSaveData);
+ } else {
+ LOG_ERROR(Service_FS, "Can't instantiate SystemSaveData archive with path %s",
+ systemsavedata_directory.c_str());
+ }
}
/// Shutdown archives