소스 검색

LibC: Make remove() propagate non-EISDIR unlink() errors

Regressed in 16105091ba5cb8e9d81eabcb499e70b1907ffc08.
Andreas Kling 3 년 전
부모
커밋
c93687c15e
1개의 변경된 파일5개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 2
      Userland/Libraries/LibC/stdio.cpp

+ 5 - 2
Userland/Libraries/LibC/stdio.cpp

@@ -1236,8 +1236,11 @@ int pclose(FILE* stream)
 
 int remove(const char* pathname)
 {
-    if (unlink(pathname) < 0 && errno == EISDIR)
-        return rmdir(pathname);
+    if (unlink(pathname) < 0) {
+        if (errno == EISDIR)
+            return rmdir(pathname);
+        return -1;
+    }
     return 0;
 }