diff options
author | Barney Gale <barney.gale@gmail.com> | 2025-02-24 19:07:54 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-24 19:07:54 (GMT) |
commit | 48c84a400aa90014a16ceac92df4b0cf5ca6b3d4 (patch) | |
tree | 90585212559f310ffe7ece9eb9398460369ed494 /Lib/pathlib/_abc.py | |
parent | d73d69e232ce848733517736b1761e7bd2478574 (diff) | |
download | cpython-48c84a400aa90014a16ceac92df4b0cf5ca6b3d4.zip cpython-48c84a400aa90014a16ceac92df4b0cf5ca6b3d4.tar.gz cpython-48c84a400aa90014a16ceac92df4b0cf5ca6b3d4.tar.bz2 |
GH-125413: pathlib ABCs: use caching `path.info.exists()` when globbing (#130422)
Call `ReadablePath.info.exists()` rather than `ReadablePath.exists()` when
globbing so that we use (or populate) the `info` cache.
Diffstat (limited to 'Lib/pathlib/_abc.py')
-rw-r--r-- | Lib/pathlib/_abc.py | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/Lib/pathlib/_abc.py b/Lib/pathlib/_abc.py index 115e120..4106d47 100644 --- a/Lib/pathlib/_abc.py +++ b/Lib/pathlib/_abc.py @@ -316,14 +316,11 @@ class ReadablePath(JoinablePath): paths.append((path, dirnames, filenames)) try: for child in path.iterdir(): - try: - if child.info.is_dir(follow_symlinks=follow_symlinks): - if not top_down: - paths.append(child) - dirnames.append(child.name) - else: - filenames.append(child.name) - except OSError: + if child.info.is_dir(follow_symlinks=follow_symlinks): + if not top_down: + paths.append(child) + dirnames.append(child.name) + else: filenames.append(child.name) except OSError as error: if on_error is not None: |