aboutsummaryrefslogtreecommitdiffstats
path: root/generator.c
diff options
context:
space:
mode:
authorWayne Davison <wayned@samba.org>2006-12-12 20:17:05 +0000
committerWayne Davison <wayned@samba.org>2006-12-12 20:17:05 +0000
commit225aeca346b5d59f5058e900966f68d9f076c3d5 (patch)
treefdc51ee1d6af341702be79b96d4192b806862246 /generator.c
parent0a62f5f38237a5b9a10d1c75f4b624c0035431a3 (diff)
downloadandroid_external_rsync-225aeca346b5d59f5058e900966f68d9f076c3d5.tar.gz
android_external_rsync-225aeca346b5d59f5058e900966f68d9f076c3d5.tar.bz2
android_external_rsync-225aeca346b5d59f5058e900966f68d9f076c3d5.zip
Use new BITS_EQUAL() define.
Diffstat (limited to 'generator.c')
-rw-r--r--generator.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/generator.c b/generator.c
index a98ba9a0..a53bb646 100644
--- a/generator.c
+++ b/generator.c
@@ -520,8 +520,7 @@ static void do_delete_pass(struct file_list *flist)
int unchanged_attrs(struct file_struct *file, STRUCT_STAT *st)
{
- if (preserve_perms
- && (unsigned)(st->st_mode & CHMOD_BITS) != (file->mode & CHMOD_BITS))
+ if (preserve_perms && !BITS_EQUAL(st->st_mode, file->mode, CHMOD_BITS))
return 0;
if (am_root && preserve_uid && st->st_uid != F_UID(file))
@@ -548,7 +547,7 @@ void itemize(struct file_struct *file, int ndx, int statret, STRUCT_STAT *st,
&& (!(iflags & ITEM_XNAME_FOLLOWS) || *xname))
|| (keep_time && cmp_time(file->modtime, st->st_mtime) != 0))
iflags |= ITEM_REPORT_TIME;
- if ((unsigned)(st->st_mode & CHMOD_BITS) != (file->mode & CHMOD_BITS))
+ if (!BITS_EQUAL(st->st_mode, file->mode, CHMOD_BITS))
iflags |= ITEM_REPORT_PERMS;
if (preserve_uid && am_root && F_UID(file) != st->st_uid)
iflags |= ITEM_REPORT_OWNER;
@@ -1342,7 +1341,7 @@ static void recv_generator(char *fname, struct file_struct *file, int ndx,
t = "special file";
}
if (statret == 0
- && (unsigned)(st.st_mode & ~CHMOD_BITS) == (file->mode & ~CHMOD_BITS)
+ && BITS_EQUAL(st.st_mode, file->mode, _S_IFMT)
&& st.st_rdev == rdev) {
/* The device or special file is identical. */
if (itemizing)