Ver código fonte

file_sys: Override missing mutating functions to be stubbed out for ReadOnlyVfsDirectory by default

Ensures that read only indeed means read only.
Lioncash 7 anos atrás
pai
commit
0ccaaafca3
2 arquivos alterados com 25 adições e 0 exclusões
  1. 20 0
      src/core/file_sys/vfs.cpp
  2. 5 0
      src/core/file_sys/vfs.h

+ 20 - 0
src/core/file_sys/vfs.cpp

@@ -453,10 +453,30 @@ std::shared_ptr<VfsFile> ReadOnlyVfsDirectory::CreateFile(std::string_view name)
     return nullptr;
     return nullptr;
 }
 }
 
 
+std::shared_ptr<VfsFile> ReadOnlyVfsDirectory::CreateFileAbsolute(std::string_view path) {
+    return nullptr;
+}
+
+std::shared_ptr<VfsFile> ReadOnlyVfsDirectory::CreateFileRelative(std::string_view path) {
+    return nullptr;
+}
+
+std::shared_ptr<VfsDirectory> ReadOnlyVfsDirectory::CreateDirectoryAbsolute(std::string_view path) {
+    return nullptr;
+}
+
+std::shared_ptr<VfsDirectory> ReadOnlyVfsDirectory::CreateDirectoryRelative(std::string_view path) {
+    return nullptr;
+}
+
 bool ReadOnlyVfsDirectory::DeleteSubdirectory(std::string_view name) {
 bool ReadOnlyVfsDirectory::DeleteSubdirectory(std::string_view name) {
     return false;
     return false;
 }
 }
 
 
+bool ReadOnlyVfsDirectory::DeleteSubdirectoryRecursive(std::string_view name) {
+    return false;
+}
+
 bool ReadOnlyVfsDirectory::CleanSubdirectoryRecursive(std::string_view name) {
 bool ReadOnlyVfsDirectory::CleanSubdirectoryRecursive(std::string_view name) {
     return false;
     return false;
 }
 }

+ 5 - 0
src/core/file_sys/vfs.h

@@ -282,7 +282,12 @@ public:
     bool IsReadable() const override;
     bool IsReadable() const override;
     std::shared_ptr<VfsDirectory> CreateSubdirectory(std::string_view name) override;
     std::shared_ptr<VfsDirectory> CreateSubdirectory(std::string_view name) override;
     std::shared_ptr<VfsFile> CreateFile(std::string_view name) override;
     std::shared_ptr<VfsFile> CreateFile(std::string_view name) override;
+    std::shared_ptr<VfsFile> CreateFileAbsolute(std::string_view path) override;
+    std::shared_ptr<VfsFile> CreateFileRelative(std::string_view path) override;
+    std::shared_ptr<VfsDirectory> CreateDirectoryAbsolute(std::string_view path) override;
+    std::shared_ptr<VfsDirectory> CreateDirectoryRelative(std::string_view path) override;
     bool DeleteSubdirectory(std::string_view name) override;
     bool DeleteSubdirectory(std::string_view name) override;
+    bool DeleteSubdirectoryRecursive(std::string_view name) override;
     bool CleanSubdirectoryRecursive(std::string_view name) override;
     bool CleanSubdirectoryRecursive(std::string_view name) override;
     bool DeleteFile(std::string_view name) override;
     bool DeleteFile(std::string_view name) override;
     bool Rename(std::string_view name) override;
     bool Rename(std::string_view name) override;