diff options
| author | 2018-03-04 13:03:58 -0500 | |
|---|---|---|
| committer | 2018-03-04 14:30:07 -0500 | |
| commit | 0eefe6e4d15cbc7a5902dfbe5e7742ef4ea71902 (patch) | |
| tree | d6fbf1e18b6b17fcb089306af26c48331100814c /src/core/hle/service/filesystem | |
| parent | Merge pull request #226 from Subv/buffer_queue_event (diff) | |
| download | yuzu-0eefe6e4d15cbc7a5902dfbe5e7742ef4ea71902.tar.gz yuzu-0eefe6e4d15cbc7a5902dfbe5e7742ef4ea71902.tar.xz yuzu-0eefe6e4d15cbc7a5902dfbe5e7742ef4ea71902.zip | |
FS: Make EnsureSaveData create the savedata folder when called for the first time.
Diffstat (limited to 'src/core/hle/service/filesystem')
| -rw-r--r-- | src/core/hle/service/filesystem/filesystem.cpp | 13 | ||||
| -rw-r--r-- | src/core/hle/service/filesystem/filesystem.h | 7 |
2 files changed, 20 insertions, 0 deletions
diff --git a/src/core/hle/service/filesystem/filesystem.cpp b/src/core/hle/service/filesystem/filesystem.cpp index 32752aea5..ef05955b9 100644 --- a/src/core/hle/service/filesystem/filesystem.cpp +++ b/src/core/hle/service/filesystem/filesystem.cpp | |||
| @@ -43,6 +43,19 @@ ResultVal<std::unique_ptr<FileSys::FileSystemBackend>> OpenFileSystem(Type type, | |||
| 43 | return itr->second->Open(path); | 43 | return itr->second->Open(path); |
| 44 | } | 44 | } |
| 45 | 45 | ||
| 46 | ResultCode FormatFileSystem(Type type) { | ||
| 47 | LOG_TRACE(Service_FS, "Formatting FileSystem with type=%d", type); | ||
| 48 | |||
| 49 | auto itr = filesystem_map.find(type); | ||
| 50 | if (itr == filesystem_map.end()) { | ||
| 51 | // TODO(bunnei): Find a better error code for this | ||
| 52 | return ResultCode(-1); | ||
| 53 | } | ||
| 54 | |||
| 55 | FileSys::Path unused; | ||
| 56 | return itr->second->Format(unused); | ||
| 57 | } | ||
| 58 | |||
| 46 | void RegisterFileSystems() { | 59 | void RegisterFileSystems() { |
| 47 | filesystem_map.clear(); | 60 | filesystem_map.clear(); |
| 48 | 61 | ||
diff --git a/src/core/hle/service/filesystem/filesystem.h b/src/core/hle/service/filesystem/filesystem.h index 80f318676..8d30e94a1 100644 --- a/src/core/hle/service/filesystem/filesystem.h +++ b/src/core/hle/service/filesystem/filesystem.h | |||
| @@ -44,6 +44,13 @@ ResultCode RegisterFileSystem(std::unique_ptr<FileSys::FileSystemFactory>&& fact | |||
| 44 | ResultVal<std::unique_ptr<FileSys::FileSystemBackend>> OpenFileSystem(Type type, | 44 | ResultVal<std::unique_ptr<FileSys::FileSystemBackend>> OpenFileSystem(Type type, |
| 45 | FileSys::Path& path); | 45 | FileSys::Path& path); |
| 46 | 46 | ||
| 47 | /** | ||
| 48 | * Formats a file system | ||
| 49 | * @param type Type of the file system to format | ||
| 50 | * @return ResultCode of the operation | ||
| 51 | */ | ||
| 52 | ResultCode FormatFileSystem(Type type); | ||
| 53 | |||
| 47 | /// Registers all Filesystem services with the specified service manager. | 54 | /// Registers all Filesystem services with the specified service manager. |
| 48 | void InstallInterfaces(SM::ServiceManager& service_manager); | 55 | void InstallInterfaces(SM::ServiceManager& service_manager); |
| 49 | 56 | ||