diff --git a/Core/FileSystems/MetaFileSystem.cpp b/Core/FileSystems/MetaFileSystem.cpp index a19099b38c..a1b96c7fce 100644 --- a/Core/FileSystems/MetaFileSystem.cpp +++ b/Core/FileSystems/MetaFileSystem.cpp @@ -195,7 +195,6 @@ bool MetaFileSystem::MapFilePath(const std::string &_inpath, std::string &outpat { errorCode = SCE_KERNEL_ERROR_NOCWD; WARN_LOG_REPORT(HLE, "Path is relative, but current directory not set for thread %i. returning 8002032C(SCE_KERNEL_ERROR_NOCWD) instead.", currentThread, startingDirectory.c_str()); - return false; } else { diff --git a/Core/HLE/sceIo.cpp b/Core/HLE/sceIo.cpp index d353de56f6..76fc0b4f14 100644 --- a/Core/HLE/sceIo.cpp +++ b/Core/HLE/sceIo.cpp @@ -743,6 +743,9 @@ FileNode *__IoOpen(const char* filename, int flags, int mode) { access |= FILEACCESS_CREATE; PSPFileInfo info = pspFileSystem.GetFileInfo(filename); + + errorCode = 0; + u32 h = pspFileSystem.OpenFile(filename, (FileAccess) access); if (h == 0) { return NULL; @@ -769,16 +772,16 @@ u32 sceIoOpen(const char* filename, int flags, int mode) { FileNode *f = __IoOpen(filename, flags, mode); if (f == NULL) { - // Timing is not accurate, aiming low for now. + //Timing is not accurate, aiming low for now. if(errorCode == SCE_KERNEL_ERROR_NOCWD) { ERROR_LOG(HLE, "SCE_KERNEL_ERROR_NOCWD=sceIoOpen(%s, %08x, %08x) - no current working directory", filename, flags, mode); - return hleDelayResult(SCE_KERNEL_ERROR_NOCWD , "no cwd", 100); + return hleDelayResult(SCE_KERNEL_ERROR_NOCWD , "no cwd", 10000); } else { ERROR_LOG(HLE, "ERROR_ERRNO_FILE_NOT_FOUND=sceIoOpen(%s, %08x, %08x) - file not found", filename, flags, mode); - return hleDelayResult(ERROR_ERRNO_FILE_NOT_FOUND , "file opened", 100); + return hleDelayResult(ERROR_ERRNO_FILE_NOT_FOUND , "file opened", 10000); } }