Fix exclude_directories not being used because if yield_dirs.
This commit is contained in:
parent
0cff7b8734
commit
6a63454f62
1 changed files with 11 additions and 5 deletions
|
@ -684,13 +684,19 @@ def walk_generator(
|
||||||
yield (current_location, directories, files)
|
yield (current_location, directories, files)
|
||||||
|
|
||||||
def walkstep_flat(current_location, child_dirs, child_files):
|
def walkstep_flat(current_location, child_dirs, child_files):
|
||||||
if yield_directories:
|
new_child_dirs = []
|
||||||
for child_dir in child_dirs:
|
for child_dir in child_dirs:
|
||||||
child_dir_abspath = f'{current_location}{os.sep}{child_dir}'
|
child_dir_abspath = f'{current_location}{os.sep}{child_dir}'
|
||||||
if handle_exclusion(exclude_directories, child_dir, child_dir_abspath, 'directory'):
|
if handle_exclusion(exclude_directories, child_dir, child_dir_abspath, 'directory'):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
new_child_dirs.append(child_dir)
|
||||||
|
if yield_directories:
|
||||||
yield pathclass.Path(child_dir_abspath)
|
yield pathclass.Path(child_dir_abspath)
|
||||||
|
|
||||||
|
# This will actually affect the results of the os.walk going forward!
|
||||||
|
child_dirs[:] = new_child_dirs
|
||||||
|
|
||||||
if yield_files:
|
if yield_files:
|
||||||
for child_file in child_files:
|
for child_file in child_files:
|
||||||
child_file_abspath = f'{current_location}{os.sep}{child_file}'
|
child_file_abspath = f'{current_location}{os.sep}{child_file}'
|
||||||
|
|
Loading…
Reference in a new issue