[newlib-cygwin] syscalls.cc: Deduplicate remove
Corinna Vinschen
corinna@sourceware.org
Mon Jan 25 18:58:44 GMT 2021
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=f4cac1217e76b30afb55e680a909fa8a62b6088e
commit f4cac1217e76b30afb55e680a909fa8a62b6088e
Author: Ben Wijen <ben@wijen.net>
Date: Fri Jan 22 16:47:12 2021 +0100
syscalls.cc: Deduplicate remove
The remove code is already in the _remove_r function.
So, just call the _remove_r function.
Diff:
---
winsup/cygwin/syscalls.cc | 17 ++++-------------
1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index b3a110aaa..4cc8d07f5 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -1161,24 +1161,15 @@ _remove_r (struct _reent *, const char *ourname)
return -1;
}
- return win32_name.isdir () ? rmdir (ourname) : unlink (ourname);
+ int res = win32_name.isdir () ? rmdir (ourname) : unlink (ourname);
+ syscall_printf ("%R = remove(%s)", res, ourname);
+ return res;
}
extern "C" int
remove (const char *ourname)
{
- path_conv win32_name (ourname, PC_SYM_NOFOLLOW);
-
- if (win32_name.error)
- {
- set_errno (win32_name.error);
- syscall_printf ("-1 = remove (%s)", ourname);
- return -1;
- }
-
- int res = win32_name.isdir () ? rmdir (ourname) : unlink (ourname);
- syscall_printf ("%R = remove(%s)", res, ourname);
- return res;
+ return _remove_r (_REENT, ourname);
}
extern "C" pid_t
More information about the Cygwin-cvs
mailing list