Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 24f2970

Browse files
committed
Don't fail if we can't query system fonts on macOS
The query can fail in some environments where system_profiler is not available on PATH, but we don't want it to just crash the entire thing.
1 parent f5067c1 commit 24f2970

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

lib/matplotlib/font_manager.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,8 +266,11 @@ def _get_fontconfig_fonts():
266266
@lru_cache
267267
def _get_macos_fonts():
268268
"""Cache and list the font paths known to ``system_profiler SPFontsDataType``."""
269-
d, = plistlib.loads(
270-
subprocess.check_output(["system_profiler", "-xml", "SPFontsDataType"]))
269+
try:
270+
d, = plistlib.loads(
271+
subprocess.check_output(["system_profiler", "-xml", "SPFontsDataType"]))
272+
except (OSError, subprocess.CalledProcessError, plistlib.InvalidFileException):
273+
return []
271274
return [Path(entry["path"]) for entry in d["_items"]]
272275

273276

0 commit comments

Comments
 (0)