Răsfoiți Sursa

Filesystem: Return EntryType::Directory for the root directory.

It is unknown if this is correct behavior, but it makes sense and fixes a regression with Stardew Valley.
Subv 8 ani în urmă
părinte
comite
e5c916a27c
1 a modificat fișierele cu 4 adăugiri și 0 ștergeri
  1. 4 0
      src/core/hle/service/filesystem/filesystem.cpp

+ 4 - 0
src/core/hle/service/filesystem/filesystem.cpp

@@ -193,6 +193,10 @@ ResultVal<FileSys::EntryType> VfsDirectoryServiceWrapper::GetEntryType(
     if (dir == nullptr)
         return FileSys::ERROR_PATH_NOT_FOUND;
     auto filename = FileUtil::GetFilename(path);
+    // TODO(Subv): Some games use the '/' path, find out what this means.
+    if (filename.empty())
+        return MakeResult(FileSys::EntryType::Directory);
+
     if (dir->GetFile(filename) != nullptr)
         return MakeResult(FileSys::EntryType::File);
     if (dir->GetSubdirectory(filename) != nullptr)