extern char *backup_suffix;
extern int backup_suffix_len;
extern struct file_list *cur_flist, *first_flist, *dir_flist;
-extern struct filter_list_struct server_filter_list;
+extern struct filter_list_struct daemon_filter_list;
int ignore_perishable = 0;
int non_perishable_cnt = 0;
return;
}
- if (skip_dir && is_below(file, skip_dir)) {
- if (is_dir)
- file->flags |= FLAG_MISSING_DIR;
+ if (skip_dir) {
+ if (is_below(file, skip_dir)) {
+ if (is_dir)
+ file->flags |= FLAG_MISSING_DIR;
#ifdef SUPPORT_HARD_LINKS
- else if (F_IS_HLINKED(file))
- handle_skipped_hlink(file, itemizing, code, f_out);
+ else if (F_IS_HLINKED(file))
+ handle_skipped_hlink(file, itemizing, code, f_out);
#endif
- return;
- } else
+ return;
+ }
skip_dir = NULL;
+ }
- if (server_filter_list.head) {
- if (check_filter(&server_filter_list, fname, is_dir) < 0) {
+ if (daemon_filter_list.head) {
+ if (check_filter(&daemon_filter_list, fname, is_dir) < 0) {
if (is_dir < 0)
return;
#ifdef SUPPORT_HARD_LINKS
statret = -1;
stat_errno = ENOENT;
} else {
- dry_missing_dir = NULL;
const char *dn = file->dirname ? file->dirname : ".";
+ dry_missing_dir = NULL;
if (parent_dirname != dn && strcmp(parent_dirname, dn) != 0) {
if (relative_paths && !implied_dirs
&& do_stat(dn, &sx.st) < 0) {
statret = -1;
}
if (dry_run && statret != 0) {
- dry_missing_dir = file;
+ if (!dry_missing_dir)
+ dry_missing_dir = file;
file->flags |= FLAG_MISSING_DIR;
}
real_ret = statret;