diff --git a/Core/FileSystems/DirectoryFileSystem.cpp b/Core/FileSystems/DirectoryFileSystem.cpp index 29da909374..d1a4e02091 100644 --- a/Core/FileSystems/DirectoryFileSystem.cpp +++ b/Core/FileSystems/DirectoryFileSystem.cpp @@ -289,7 +289,10 @@ std::vector DirectoryFileSystem::GetDirListing(std::string path) else entry.type = FILETYPE_NORMAL; - entry.size = findData.nFileSizeLow | ((u64)findData.nFileSizeHigh<<32); + if (!strcmp(findData.cFileName, "..") )// TODO: is this just for .. or all sub directories? Need to add a directory to the test to find out. Also why so different than the old test results? + entry.size = 4096; + else + entry.size = findData.nFileSizeLow | ((u64)findData.nFileSizeHigh<<32); entry.name = findData.cFileName; myVector.push_back(entry); diff --git a/Core/HLE/sceIo.cpp b/Core/HLE/sceIo.cpp index 91abd1d47e..e82ec1bd63 100644 --- a/Core/HLE/sceIo.cpp +++ b/Core/HLE/sceIo.cpp @@ -245,7 +245,7 @@ void __IoGetStat(SceIoStat *stat, PSPFileInfo &info) else type = SCE_STM_FREG, attr = TYPE_FILE; - stat->st_mode = 0777 | type; + stat->st_mode = type; //0777 | type; stat->st_attr = attr; stat->st_size = info.size; stat->st_private[0] = info.startSector; diff --git a/test.py b/test.py index 209d335091..c3e0107ab0 100644 --- a/test.py +++ b/test.py @@ -36,6 +36,7 @@ tests_good = [ "power/power", "rtc/rtc", "umd/callbacks/umd", + "io/directory/directory", ] tests_next = [ @@ -55,7 +56,6 @@ tests_next = [ "hle/check_not_used_uids", "font/fonttest", "io/cwd/cwd", - "io/directory/directory", "io/io/io", "io/iodrv/iodrv", "modules/loadexec/loader",