summaryrefslogtreecommitdiff
path: root/src/core/file_sys
diff options
context:
space:
mode:
authorGravatar Chloe2021-06-03 10:46:29 +1000
committerGravatar GitHub2021-06-02 17:46:29 -0700
commitc4c256f56ad4db7064aa2a2bc769f57efcbd5e38 (patch)
tree2aeb68fb1c51198071a4b340db69f9f9d453729d /src/core/file_sys
parentMerge pull request #6308 from Morph1984/result (diff)
downloadyuzu-c4c256f56ad4db7064aa2a2bc769f57efcbd5e38.tar.gz
yuzu-c4c256f56ad4db7064aa2a2bc769f57efcbd5e38.tar.xz
yuzu-c4c256f56ad4db7064aa2a2bc769f57efcbd5e38.zip
fspsrv: Implement DisableAutoSaveDataCreation (#6355)
- Used by Mii Edit
Diffstat (limited to 'src/core/file_sys')
-rw-r--r--src/core/file_sys/savedata_factory.cpp6
-rw-r--r--src/core/file_sys/savedata_factory.h3
2 files changed, 8 insertions, 1 deletions
diff --git a/src/core/file_sys/savedata_factory.cpp b/src/core/file_sys/savedata_factory.cpp
index 6c3685927..b5254dd75 100644
--- a/src/core/file_sys/savedata_factory.cpp
+++ b/src/core/file_sys/savedata_factory.cpp
@@ -105,7 +105,7 @@ ResultVal<VirtualDir> SaveDataFactory::Open(SaveDataSpaceId space,
105 105
106 auto out = dir->GetDirectoryRelative(save_directory); 106 auto out = dir->GetDirectoryRelative(save_directory);
107 107
108 if (out == nullptr && ShouldSaveDataBeAutomaticallyCreated(space, meta)) { 108 if (out == nullptr && (ShouldSaveDataBeAutomaticallyCreated(space, meta) && auto_create)) {
109 return Create(space, meta); 109 return Create(space, meta);
110 } 110 }
111 111
@@ -199,4 +199,8 @@ void SaveDataFactory::WriteSaveDataSize(SaveDataType type, u64 title_id, u128 us
199 size_file->WriteObject(new_value); 199 size_file->WriteObject(new_value);
200} 200}
201 201
202void SaveDataFactory::SetAutoCreate(bool state) {
203 auto_create = state;
204}
205
202} // namespace FileSys 206} // namespace FileSys
diff --git a/src/core/file_sys/savedata_factory.h b/src/core/file_sys/savedata_factory.h
index 86c9f5350..1d8dc981f 100644
--- a/src/core/file_sys/savedata_factory.h
+++ b/src/core/file_sys/savedata_factory.h
@@ -104,9 +104,12 @@ public:
104 void WriteSaveDataSize(SaveDataType type, u64 title_id, u128 user_id, 104 void WriteSaveDataSize(SaveDataType type, u64 title_id, u128 user_id,
105 SaveDataSize new_value) const; 105 SaveDataSize new_value) const;
106 106
107 void SetAutoCreate(bool state);
108
107private: 109private:
108 VirtualDir dir; 110 VirtualDir dir;
109 Core::System& system; 111 Core::System& system;
112 bool auto_create{true};
110}; 113};
111 114
112} // namespace FileSys 115} // namespace FileSys