X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/ccdb23bb90bca50e3850a4fb1adcdeb855b512b9..edb977215ba3ac0d64dc7208f67791afe11bb55d:/exclude.c diff --git a/exclude.c b/exclude.c index 1ed19dd4..cfaed26f 100644 --- a/exclude.c +++ b/exclude.c @@ -879,14 +879,16 @@ static char default_cvsignore[] = static void get_cvs_excludes(uint32 mflags) { - char *p, fname[MAXPATHLEN]; static int initialized = 0; + char *p, fname[MAXPATHLEN]; if (initialized) return; initialized = 1; - parse_rule(&cvs_filter_list, default_cvsignore, mflags | MATCHFLG_PERISHABLE, 0); + parse_rule(&cvs_filter_list, default_cvsignore, + mflags | (protocol_version >= 30 ? MATCHFLG_PERISHABLE : 0), + 0); p = module_id >= 0 && lp_use_chroot(module_id) ? "/" : getenv("HOME"); if (p && pathjoin(fname, MAXPATHLEN, p, ".cvsignore") < MAXPATHLEN) @@ -1070,6 +1072,8 @@ char *get_rule_prefix(int match_flags, const char *pat, int for_xfer, else legal_len = 0; + if (match_flags & MATCHFLG_NEGATE) + *op++ = '!'; if (match_flags & MATCHFLG_CVS_IGNORE) *op++ = 'C'; else {