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

Skip to content

Commit 5ab5532

Browse files
K900LorenzoPeri17
authored andcommitted
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 8eba370 commit 5ab5532

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)