diff options
author | Leah Neukirchen <leah@vuxu.org> | 2019-03-28 22:22:45 +0100 |
---|---|---|
committer | Leah Neukirchen <leah@vuxu.org> | 2019-03-28 22:22:45 +0100 |
commit | 53151f4f890f302291eb8d3375dec4f8ecb66ed7 (patch) | |
tree | 733d24d0a224e46d917711e02f3c9e54733a003f | |
parent | 0d73424edf1476696270c7bbb2f79764c05a3e5e (diff) | |
download | mblaze-53151f4f890f302291eb8d3375dec4f8ecb66ed7.tar.gz mblaze-53151f4f890f302291eb8d3375dec4f8ecb66ed7.tar.xz mblaze-53151f4f890f302291eb8d3375dec4f8ecb66ed7.zip |
mdeliver: add fallback to utimes for systems that don't have utimensat
Namely, macOS before 10.13.
-rw-r--r-- | mdeliver.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mdeliver.c b/mdeliver.c index f202420..80dbe1a 100644 --- a/mdeliver.c +++ b/mdeliver.c @@ -223,6 +223,7 @@ try_again: } if (preserve_mtime) { +#if defined(AT_FDCWD) && defined(UTIME_NOW) && defined(UTIME_OMIT) const struct timespec times[2] = { { tv.tv_sec, tv.tv_usec * 1000L }, #if (defined(__APPLE__) && defined(__MACH__)) @@ -232,6 +233,13 @@ try_again: #endif }; utimensat(AT_FDCWD, tmp, times, 0); +#else + const struct timeval times[2] = { + tv, + { st.st_mtime, 0 } + }; + utimes(tmp, times); +#endif } snprintf(dst, sizeof dst, "%s/%s/%s:2,%s", |