summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSubv <subv2112@gmail.com>2018-03-23 11:09:09 -0500
committerSubv <subv2112@gmail.com>2018-03-23 14:27:07 -0500
commit4c06d55a81304d0e658adf441d8bdb90a32ba228 (patch)
tree5cd94183585e77ebf5dd78c19a336ccaf85d4f47 /src
parenteff3f60b73343365ad65638f55591965df6f7e25 (diff)
FS: Move the file open mode calculation to a separate function.
Diffstat (limited to 'src')
-rw-r--r--src/core/file_sys/disk_filesystem.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/core/file_sys/disk_filesystem.cpp b/src/core/file_sys/disk_filesystem.cpp
index 9383bf856..3a4b45721 100644
--- a/src/core/file_sys/disk_filesystem.cpp
+++ b/src/core/file_sys/disk_filesystem.cpp
@@ -11,13 +11,7 @@
namespace FileSys {
-std::string Disk_FileSystem::GetName() const {
- return "Disk";
-}
-
-ResultVal<std::unique_ptr<StorageBackend>> Disk_FileSystem::OpenFile(const std::string& path,
- Mode mode) const {
-
+static std::string ModeFlagsToString(Mode mode) {
std::string mode_str;
u32 mode_flags = static_cast<u32>(mode);
@@ -39,6 +33,19 @@ ResultVal<std::unique_ptr<StorageBackend>> Disk_FileSystem::OpenFile(const std::
mode_str += "b";
+ return mode_str;
+}
+
+std::string Disk_FileSystem::GetName() const {
+ return "Disk";
+}
+
+ResultVal<std::unique_ptr<StorageBackend>> Disk_FileSystem::OpenFile(const std::string& path,
+ Mode mode) const {
+
+ // Calculate the correct open mode for the file.
+ std::string mode_str = ModeFlagsToString(mode);
+
std::string full_path = base_directory + path;
auto file = std::make_shared<FileUtil::IOFile>(full_path, mode_str.c_str());