X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/70891d2683929346847f5a7eccc135ee0352c4ec..dd0d95fa9c8eea3de9cc95fc27a6d1f4f051439c:/omit-dir-changes.diff diff --git a/omit-dir-changes.diff b/omit-dir-changes.diff index 38e2ef1..90e7ad6 100644 --- a/omit-dir-changes.diff +++ b/omit-dir-changes.diff @@ -9,7 +9,7 @@ To use this patch, run these commands for a successful build: --- old/generator.c +++ new/generator.c -@@ -44,6 +44,7 @@ extern int preserve_uid; +@@ -45,6 +45,7 @@ extern int preserve_uid; extern int preserve_gid; extern int preserve_times; extern int omit_dir_times; @@ -17,9 +17,9 @@ To use this patch, run these commands for a successful build: extern int delete_mode; extern int delete_before; extern int delete_during; -@@ -479,10 +480,11 @@ void itemize(struct file_struct *file, i +@@ -541,10 +542,11 @@ void itemize(struct file_struct *file, i iflags |= ITEM_REPORT_TIME; - if ((file->mode & CHMOD_BITS) != (st->st_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) + if (preserve_uid && am_root && F_UID(file) != st->st_uid @@ -32,7 +32,7 @@ To use this patch, run these commands for a successful build: iflags |= ITEM_REPORT_GROUP; } else iflags |= ITEM_IS_NEW; -@@ -1088,7 +1090,7 @@ static void recv_generator(char *fname, +@@ -1161,7 +1163,7 @@ static void recv_generator(char *fname, /* If we're not preserving permissions, change the file-list's * mode based on the local permissions and some heuristics. */ @@ -67,7 +67,7 @@ To use this patch, run these commands for a successful build: {"modify-window", 0, POPT_ARG_INT, &modify_window, OPT_MODIFY_WINDOW, 0, 0 }, {"super", 0, POPT_ARG_VAL, &am_root, 2, 0, 0 }, {"no-super", 0, POPT_ARG_VAL, &am_root, 0, 0, 0 }, -@@ -1286,6 +1289,9 @@ int parse_arguments(int *argc, const cha +@@ -1293,6 +1296,9 @@ int parse_arguments(int *argc, const cha "P *%s", backup_suffix); parse_rule(&filter_list, backup_dir_buf, 0, 0); } @@ -77,7 +77,7 @@ To use this patch, run these commands for a successful build: if (make_backups && !backup_dir) omit_dir_times = 1; -@@ -1519,6 +1525,8 @@ void server_options(char **args,int *arg +@@ -1526,6 +1532,8 @@ void server_options(char **args,int *arg argstr[x++] = 'm'; if (omit_dir_times == 2) argstr[x++] = 'O'; @@ -88,15 +88,15 @@ To use this patch, run these commands for a successful build: argstr[x++] = 'L'; --- old/receiver.c +++ new/receiver.c -@@ -37,6 +37,7 @@ extern int protocol_version; +@@ -38,6 +38,7 @@ extern int protocol_version; extern int relative_paths; extern int preserve_hard_links; extern int preserve_perms; +extern int omit_dir_changes; extern int basis_dir_cnt; extern int make_backups; - extern int flist_extra_ndx; -@@ -551,7 +552,7 @@ int recv_files(int f_in, struct file_lis + extern int cleanup_got_literal; +@@ -560,7 +561,7 @@ int recv_files(int f_in, char *local_nam /* If we're not preserving permissions, change the file-list's * mode based on the local permissions and some heuristics. */ @@ -115,7 +115,7 @@ To use this patch, run these commands for a successful build: extern int am_root; extern int am_server; extern int am_sender; -@@ -215,9 +216,11 @@ int set_file_attrs(char *fname, struct f +@@ -265,9 +266,11 @@ int set_file_attrs(char *fname, struct f updated = 1; }