X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/bd685982389b78a158921b7839bdeca501338d19..HEAD:/xattrs.c diff --git a/xattrs.c b/xattrs.c index 3a7cb25b..009da9b2 100644 --- a/xattrs.c +++ b/xattrs.c @@ -458,9 +458,9 @@ int send_xattr(int f, stat_x *sxp) } /* Return a flag indicating if we need to change a file's xattrs. If - * "find_all" is specified, also mark any abbreviated xattrs that we + * "mark_needed" is specified, also mark any abbreviated xattrs that we * need so that send_xattr_request() can tell the sender about them. */ -int xattr_diff(struct file_struct *file, stat_x *sxp, int find_all) +int xattr_diff(struct file_struct *file, stat_x *sxp, BOOL mark_needed) { item_list *lst = rsync_xal_l.items; rsync_xa *snd_rxa, *rec_rxa; @@ -486,7 +486,8 @@ int xattr_diff(struct file_struct *file, stat_x *sxp, int find_all) /* If the count of the sender's xattrs is different from our * (receiver's) xattrs, the lists are not the same. */ if (snd_cnt != rec_cnt) { - if (!find_all) + if (!mark_needed) + /* We can return as soon as we find a difference. */ return 1; xattrs_equal = 0; } @@ -500,7 +501,7 @@ int xattr_diff(struct file_struct *file, stat_x *sxp, int find_all) && memcmp(snd_rxa->datum + 1, rec_rxa->datum + 1, MAX_DIGEST_LEN) == 0; /* Flag unrequested items that we need. */ - if (!same && find_all && snd_rxa->datum[0] == XSTATE_ABBREV) + if (!same && mark_needed && snd_rxa->datum[0] == XSTATE_ABBREV) snd_rxa->datum[0] = XSTATE_TODO; } else { same = cmp == 0 && snd_rxa->datum_len == rec_rxa->datum_len @@ -508,7 +509,7 @@ int xattr_diff(struct file_struct *file, stat_x *sxp, int find_all) snd_rxa->datum_len) == 0; } if (!same) { - if (!find_all) + if (!mark_needed) return 1; xattrs_equal = 0; }