Browse Source

lib/protocol: Ignore inode time when xattr&ownership is ignored (fixes #8654) (#8655)

lib/protocol: Ignore inode time when both xattr and ownership is ignored (fixes #8654)
Simon Frei 2 years ago
parent
commit
ce2a68622c
1 changed files with 3 additions and 3 deletions
  1. 3 3
      lib/protocol/bep_extensions.go

+ 3 - 3
lib/protocol/bep_extensions.go

@@ -244,9 +244,9 @@ func (f FileInfo) isEquivalent(other FileInfo, comp FileInfoComparison) bool {
 		return false
 	}
 
-	// If we are recording inode change times and it changed, they are not
-	// equal.
-	if (f.InodeChangeNs != 0 && other.InodeChangeNs != 0) && f.InodeChangeNs != other.InodeChangeNs {
+	// If we care about either ownership or xattrs, are recording inode change
+	// times and it changed, they are not equal.
+	if !(comp.IgnoreOwnership && comp.IgnoreXattrs) && f.InodeChangeNs != 0 && other.InodeChangeNs != 0 && f.InodeChangeNs != other.InodeChangeNs {
 		return false
 	}