#include "rsync.h"
extern int verbose;
+extern int delete_mode;
static struct exclude_struct **exclude_list;
int n;
char *p;
- if (!only_included_files || (exclude_the_rest == NULL))
+ if (!only_included_files || (exclude_the_rest == NULL) || delete_mode)
return 0;
if (verbose > 1) {
only_included_files = 0;
}
ret->regular_exp = 1;
+ ret->fnmatch_flags = strstr(pattern, "**") ? 0 : FNM_PATHNAME;
} else if (!ret->include) {
only_included_files = 0;
}
}
if (ex->regular_exp) {
- if (fnmatch(pattern, name, 0) == 0)
+ if (fnmatch(pattern, name, ex->fnmatch_flags) == 0)
return 1;
} else {
int l1 = strlen(name);