Browse Source

fix messed-up errno if remove fails for a non-EISDIR reason

Rich Felker 14 years ago
parent
commit
9646e4d024
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/stdio/remove.c

+ 2 - 2
src/stdio/remove.c

@@ -4,6 +4,6 @@
 
 int remove(const char *path)
 {
-	return (syscall(SYS_unlink, path) && errno == EISDIR)
-		? syscall(SYS_rmdir, path) : 0;
+	int r = syscall(SYS_unlink, path);
+	return (r && errno == EISDIR) ? syscall(SYS_rmdir, path) : r;
 }