* lib/utimens.c (fdutimens): Don't invoke dup2; it's not needed
to work around the Linux kernel bug.
* modules/utimens (Depends-on): Remove dup2.
+2011-09-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ utimens: remove dependency on dup2
+ * lib/utimens.c (fdutimens): Don't invoke dup2; it's not needed
+ to work around the Linux kernel bug.
+ * modules/utimens (Depends-on): Remove dup2.
+
2011-09-18 Bruno Haible <bruno@clisp.org>
inet_ntop, inet_pton: Look for it also in libresolv.
if (adjustment_needed < 0)
return -1;
- /* Require that at least one of FD or FILE are valid. Works around
+ /* Require that at least one of FD or FILE are potentially valid, to avoid
a Linux bug where futimens (AT_FDCWD, NULL) changes "." rather
than failing. */
- if (!file)
+ if (fd < 0 && !file)
{
- if (fd < 0)
- {
- errno = EBADF;
- return -1;
- }
- if (dup2 (fd, fd) != fd)
- return -1;
+ errno = EBADF;
+ return -1;
}
/* Some Linux-based NFS clients are buggy, and mishandle time stamps
m4/utimes.m4
Depends-on:
-dup2
errno
lstat
gettime