From 15c0afec055b935870b05af4483a0598d2e84dbb Mon Sep 17 00:00:00 2001 From: Simon Frei Date: Tue, 8 Nov 2022 08:36:41 +0100 Subject: [PATCH] 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) --- lib/protocol/bep_extensions.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/protocol/bep_extensions.go b/lib/protocol/bep_extensions.go index 3d3eb437c..2290f2cce 100644 --- a/lib/protocol/bep_extensions.go +++ b/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 }