From 43fcc52291e275a199223e2a4c3f8714086f3784 Mon Sep 17 00:00:00 2001 From: Andrew Senetar Date: Tue, 29 Mar 2022 22:35:38 -0500 Subject: [PATCH] Replace pathlib.glob() with os.scandir() in fs.py --- core/fs.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/core/fs.py b/core/fs.py index ddb2464d..658c6f64 100644 --- a/core/fs.py +++ b/core/fs.py @@ -377,7 +377,8 @@ class Folder(File): @property def subfolders(self): if self._subfolders is None: - subfolders = [p for p in self.path.glob("*") if not p.is_symlink() and p.is_dir()] + with os.scandir(self.path) as iter: + subfolders = [p.path for p in iter if not p.is_symlink() and p.is_dir()] self._subfolders = [self.__class__(p) for p in subfolders] return self._subfolders @@ -410,10 +411,11 @@ def get_files(path, fileclasses=[File]): assert all(issubclass(fileclass, File) for fileclass in fileclasses) try: result = [] - for path in path.glob("*"): - file = get_file(path, fileclasses=fileclasses) - if file is not None: - result.append(file) + with os.scandir(path) as iter: + for item in iter: + file = get_file(item, fileclasses=fileclasses) + if file is not None: + result.append(file) return result except EnvironmentError: raise InvalidPath(path)