diff options
author | Morph <39850852+Morph1984@users.noreply.github.com> | 2020-12-09 11:05:32 +0100 |
---|---|---|
committer | Morph <39850852+Morph1984@users.noreply.github.com> | 2020-12-09 12:34:49 +0100 |
commit | b06d6e36468c10864fefc33a4627e4ded36faae3 (patch) | |
tree | c68dd1b8c2873c623a5dfde1eb68b53d440d2669 /src/core/file_sys | |
parent | Merge pull request #5174 from ReinUsesLisp/fs-fix (diff) | |
download | yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar.gz yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar.bz2 yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar.lz yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar.xz yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.tar.zst yuzu-b06d6e36468c10864fefc33a4627e4ded36faae3.zip |
Diffstat (limited to 'src/core/file_sys')
-rw-r--r-- | src/core/file_sys/vfs_real.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/file_sys/vfs_real.cpp b/src/core/file_sys/vfs_real.cpp index 488687ba9..3b70f7755 100644 --- a/src/core/file_sys/vfs_real.cpp +++ b/src/core/file_sys/vfs_real.cpp @@ -94,9 +94,13 @@ VirtualFile RealVfsFilesystem::OpenFile(std::string_view path_, Mode perms) { VirtualFile RealVfsFilesystem::CreateFile(std::string_view path_, Mode perms) { const auto path = FS::SanitizePath(path_, FS::DirectorySeparator::PlatformDefault); - const auto path_fwd = FS::SanitizePath(path, FS::DirectorySeparator::ForwardSlash); + const auto parent_path = FS::GetParentPath(path); + if (!FS::Exists(path)) { - FS::CreateFullPath(path_fwd); + if (!FS::CreateDirs(parent_path)) { + return nullptr; + } + if (!FS::CreateEmptyFile(path)) { return nullptr; } |