From f4be47302ea8cc66617a9be3fbaf41594a2dbc58 Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Mon, 8 Oct 2018 20:18:21 +0200 Subject: [PATCH] Don't error if some font directories are not readable. --- lib/matplotlib/font_manager.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/font_manager.py b/lib/matplotlib/font_manager.py index 6f8dfe315cbd..603b783493b9 100644 --- a/lib/matplotlib/font_manager.py +++ b/lib/matplotlib/font_manager.py @@ -152,9 +152,11 @@ def list_fonts(directory, extensions): recursively under the directory. """ extensions = ["." + ext for ext in extensions] - return [str(path) - for path in filter(Path.is_file, Path(directory).glob("**/*.*")) - if path.suffix.lower() in extensions] + return [os.path.join(dirpath, filename) + # os.walk ignores access errors, unlike Path.glob. + for dirpath, _, filenames in os.walk(directory) + for filename in filenames + if Path(filename).suffix.lower() in extensions] def win32FontDirectory():