mirror of
https://github.com/borgbackup/borg.git
synced 2025-02-20 21:27:32 +00:00
Merge pull request #4008 from ThomasWaldmann/fix-cachedir
don't archive tagged dir when recursing an excluded dir, fixes #3991
This commit is contained in:
commit
4c8db8feb5
1 changed files with 10 additions and 7 deletions
|
@ -583,13 +583,16 @@ def _process(self, fso, cache, matcher, exclude_caches, exclude_if_present,
|
||||||
if recurse:
|
if recurse:
|
||||||
tag_paths = dir_is_tagged(path, exclude_caches, exclude_if_present)
|
tag_paths = dir_is_tagged(path, exclude_caches, exclude_if_present)
|
||||||
if tag_paths:
|
if tag_paths:
|
||||||
if keep_exclude_tags and not dry_run:
|
# if we are already recursing in an excluded dir, we do not need to do anything else than
|
||||||
fso.process_dir(path, st)
|
# returning (we do not need to archive or recurse into tagged directories), see #3991:
|
||||||
for tag_path in tag_paths:
|
if not recurse_excluded_dir:
|
||||||
self._process(fso, cache, matcher, exclude_caches, exclude_if_present,
|
if keep_exclude_tags and not dry_run:
|
||||||
keep_exclude_tags, skip_inodes, tag_path, restrict_dev,
|
fso.process_dir(path, st)
|
||||||
read_special=read_special, dry_run=dry_run)
|
for tag_path in tag_paths:
|
||||||
self.print_file_status('x', path)
|
self._process(fso, cache, matcher, exclude_caches, exclude_if_present,
|
||||||
|
keep_exclude_tags, skip_inodes, tag_path, restrict_dev,
|
||||||
|
read_special=read_special, dry_run=dry_run)
|
||||||
|
self.print_file_status('x', path)
|
||||||
return
|
return
|
||||||
if not dry_run:
|
if not dry_run:
|
||||||
if not recurse_excluded_dir:
|
if not recurse_excluded_dir:
|
||||||
|
|
Loading…
Reference in a new issue