From 671cbfbbd079536db05dfe9ddb72bc96ce4670da Mon Sep 17 00:00:00 2001 From: Stephen Miller Date: Mon, 17 Feb 2025 15:21:35 -0600 Subject: [PATCH] posix_open fixups --- src/core/libraries/kernel/file_system.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/core/libraries/kernel/file_system.cpp b/src/core/libraries/kernel/file_system.cpp index 05a1ab3ac..7c1a0d8e0 100644 --- a/src/core/libraries/kernel/file_system.cpp +++ b/src/core/libraries/kernel/file_system.cpp @@ -123,6 +123,7 @@ s32 PS4_SYSV_ABI posix_open(const char* raw_path, s32 flags, u16 mode) { if (create) { if (excl && std::filesystem::exists(file->m_host_name)) { // Error if file exists + h->DeleteHandle(handle); *__Error() = POSIX_EEXIST; return -1; } @@ -157,8 +158,8 @@ s32 PS4_SYSV_ABI posix_open(const char* raw_path, s32 flags, u16 mode) { } if (e != 0) { - h->DeleteHandle(handle); // IOFile code uses platform specific errnos, they must be converted to POSIX errnos. + h->DeleteHandle(handle); SetPosixErrno(e); return -1; }