From: Wayne Davison Date: Sat, 30 Sep 2006 15:20:17 +0000 (+0000) Subject: I decided that combining --link-dest with -I doesn't make much sense X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/b06050f9ad6657a41b5ca5f7e205e48ed6edb173 I decided that combining --link-dest with -I doesn't make much sense (without some kind of a post-transfer identicality check, at least) so I'm removing the code that tried to make the two play nice. --- diff --git a/NEWS b/NEWS index 69371542..bfc2d836 100644 --- a/NEWS +++ b/NEWS @@ -41,9 +41,6 @@ Changes since 2.6.8: - If the receiving side fails to create a directory, it will now skip trying to update everything that is inside that directory. - - Make sure that the --link-dest option can still do its job even when -I - is specified. - - If --link-dest is specified with --checksum but without --times, rsync will now allow a hard-link to be created to a matching link-dest file even when the file's modify-time doesn't match the server's file. diff --git a/generator.c b/generator.c index ae7c0ea2..b36bc4d2 100644 --- a/generator.c +++ b/generator.c @@ -607,15 +607,10 @@ static int try_dests_reg(struct file_struct *file, char *fname, int ndx, char *cmpbuf, STRUCT_STAT *stp, int itemizing, int maybe_ATTRS_REPORT, enum logcode code) { - int save_ignore_times = ignore_times; int best_match = -1; int match_level = 0; int j = 0; - /* We can't let ignore_times affect the unchanged_file() test in - * an alternate-dest dir or we will never find any matches. */ - ignore_times = 0; - do { pathjoin(cmpbuf, MAXPATHLEN, basis_dir[j], fname); if (link_stat(cmpbuf, stp, 0) < 0 || !S_ISREG(stp->st_mode)) @@ -644,8 +639,6 @@ static int try_dests_reg(struct file_struct *file, char *fname, int ndx, break; } while (basis_dir[++j] != NULL); - ignore_times = save_ignore_times; - if (!match_level) return -1; @@ -1154,7 +1147,7 @@ static void recv_generator(char *fname, struct file_struct *file, int ndx, goto return_with_success; return; } - if (j != -1) { + if (j >= 0) { fnamecmp = fnamecmpbuf; fnamecmp_type = j; statret = 0;