From: Wayne Davison Date: Thu, 31 Aug 2006 17:18:24 +0000 (+0000) Subject: Make sure that --delete-excluded does not elide a per-dir merge X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/97bf86f8ee5794087e8627b04dd93c7506ae552f Make sure that --delete-excluded does not elide a per-dir merge filter file, while still dumping the .cvsignore file from -C. --- diff --git a/exclude.c b/exclude.c index fdb5c776..dc1a4754 100644 --- a/exclude.c +++ b/exclude.c @@ -1102,7 +1102,8 @@ static void send_rules(int f_out, struct filter_list_struct *flp) elide = am_sender ? 1 : -1; if (ent->match_flags & MATCHFLG_RECEIVER_SIDE) elide = elide ? 0 : am_sender ? -1 : 1; - else if (delete_excluded && !elide) + else if (delete_excluded && !elide + && (!(ent->match_flags & MATCHFLG_PERDIR_MERGE) || ent->match_flags & MATCHFLG_CVS_IGNORE)) elide = am_sender ? 1 : -1; if (elide < 0) { if (prev)