From: Wayne Davison Date: Sun, 26 Apr 2020 04:39:11 +0000 (-0700) Subject: Change do_setattrlist_times() to use an stp arg. X-Git-Tag: v3.2.0pre1~160 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1c7785ab1ecfe81f7b4f257f8a2bec2f68d43d58;p=thirdparty%2Frsync.git Change do_setattrlist_times() to use an stp arg. --- diff --git a/syscall.c b/syscall.c index 35caa07d..bcd9738e 100644 --- a/syscall.c +++ b/syscall.c @@ -367,7 +367,7 @@ OFF_T do_lseek(int fd, OFF_T offset, int whence) } #ifdef HAVE_SETATTRLIST -int do_setattrlist_times(const char *fname, time_t modtime, uint32 mod_nsec) +int do_setattrlist_times(const char *fname, STRUCT_STAT *stp) { struct attrlist attrList; struct timespec ts; @@ -375,8 +375,8 @@ int do_setattrlist_times(const char *fname, time_t modtime, uint32 mod_nsec) if (dry_run) return 0; RETURN_ERROR_IF_RO_OR_LO; - ts.tv_sec = modtime; - ts.tv_nsec = mod_nsec; + ts.tv_sec = stp->st_mtime; + ts.tv_nsec = stp->ST_MTIME_NSEC; memset(&attrList, 0, sizeof attrList); attrList.bitmapcount = ATTR_BIT_MAP_COUNT; diff --git a/util.c b/util.c index 1935a771..03917c31 100644 --- a/util.c +++ b/util.c @@ -131,7 +131,7 @@ int set_times(const char *fname, STRUCT_STAT *stp) switch (switch_step) { #ifdef HAVE_SETATTRLIST #include "case_N.h" - if (do_setattrlist_times(fname, modtime, mod_nsec) == 0) + if (do_setattrlist_times(fname, stp) == 0) break; if (errno != ENOSYS) return -1;