summaryrefslogtreecommitdiff
path: root/src/libstddjb/touch.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstddjb/touch.c')
-rw-r--r--src/libstddjb/touch.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/libstddjb/touch.c b/src/libstddjb/touch.c
index d270251..f71a983 100644
--- a/src/libstddjb/touch.c
+++ b/src/libstddjb/touch.c
@@ -11,11 +11,12 @@
int touch (char const *file)
{
+ int r ;
int fd = open_create(file) ;
if (fd < 0) return 0 ;
- if (futimens(fd, 0) < 0) return 0 ;
+ r = futimens(fd, 0) >= 0 ;
fd_close(fd) ;
- return 1 ;
+ return r ;
}
#else
@@ -27,9 +28,10 @@ int touch (char const *file)
int touch (char const *file)
{
+ int r ;
int fd = open_create(file) ;
if (fd < 0) return 0 ;
- if (futimes(fd, 0) < 0) return 0 ;
+ r = futimes(fd, 0) >= 0 ;
fd_close(fd) ;
return 1 ;
}
@@ -44,8 +46,7 @@ int touch (char const *file)
int fd = open_create(file) ;
if (fd < 0) return 0 ;
fd_close(fd) ;
- if (utimes(file, 0) < 0) return 0 ;
- return 1 ;
+ return utimes(file, 0) >= 0 ;
}
#endif