From: Barney Gale Date: Wed, 20 Jul 2022 21:34:13 +0000 (+0100) Subject: gh-82116: add comment explaining use of `list(scandir_it)` in pathlib. (GH-94939) X-Git-Tag: v3.12.0a1~899 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fd4a42d8902107647f9b7b0b6a6247e7d5253fa7;p=thirdparty%2FPython%2Fcpython.git gh-82116: add comment explaining use of `list(scandir_it)` in pathlib. (GH-94939) Automerge-Triggered-By: GH:brettcannon --- diff --git a/Lib/pathlib.py b/Lib/pathlib.py index 69e7d558a056..62dd0fa1b123 100644 --- a/Lib/pathlib.py +++ b/Lib/pathlib.py @@ -299,6 +299,8 @@ class _WildcardSelector(_Selector): def _select_from(self, parent_path, is_dir, exists, scandir): try: + # We must close the scandir() object before proceeding to + # avoid exhausting file descriptors when globbing deep trees. with scandir(parent_path) as scandir_it: entries = list(scandir_it) for entry in entries: @@ -330,6 +332,8 @@ class _RecursiveWildcardSelector(_Selector): def _iterate_directories(self, parent_path, is_dir, scandir): yield parent_path try: + # We must close the scandir() object before proceeding to + # avoid exhausting file descriptors when globbing deep trees. with scandir(parent_path) as scandir_it: entries = list(scandir_it) for entry in entries: