Have unchanged_attrs() check the mtime on items where we can
authorWayne Davison <wayned@samba.org>
Sat, 3 Nov 2007 21:14:16 +0000 (21:14 +0000)
committerWayne Davison <wayned@samba.org>
Sat, 3 Nov 2007 21:14:16 +0000 (21:14 +0000)
affect the time, even if unchanged_file() might have already
checked it.

generator.c

index db0824d..5ba5579 100644 (file)
@@ -517,6 +517,14 @@ static void do_delete_pass(void)
 
 int unchanged_attrs(const char *fname, struct file_struct *file, stat_x *sxp)
 {
 
 int unchanged_attrs(const char *fname, struct file_struct *file, stat_x *sxp)
 {
+#if !defined HAVE_LCHMOD && !defined HAVE_SETATTRLIST
+       if (S_ISLNK(file->mode)) {
+               ;
+       } else
+#endif
+       if (preserve_times && cmp_time(sxp->st.st_mtime, file->modtime) != 0)
+               return 0;
+
        if (preserve_perms && !BITS_EQUAL(sxp->st.st_mode, file->mode, CHMOD_BITS))
                return 0;
 
        if (preserve_perms && !BITS_EQUAL(sxp->st.st_mode, file->mode, CHMOD_BITS))
                return 0;