From faa88c94e36ae1c51ca75c1a8eee87d7148156e3 Mon Sep 17 00:00:00 2001 From: Damon McDougall Date: Mon, 17 Dec 2012 10:15:48 -0600 Subject: [PATCH 1/5] Make font_manager ignore KeyErrors for bad fonts Signed-off-by: John Kacur --- lib/matplotlib/font_manager.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/font_manager.py b/lib/matplotlib/font_manager.py index 4ba6f80d0145..f9418dc5b4bd 100644 --- a/lib/matplotlib/font_manager.py +++ b/lib/matplotlib/font_manager.py @@ -565,7 +565,10 @@ def createFontList(fontfiles, fontext='ttf'): except RuntimeError: verbose.report("Could not parse font file %s"%fpath) continue - prop = afmFontProperty(fpath, font) + try: + prop = afmFontProperty(fpath, font) + except KeyError: + continue else: try: font = ft2font.FT2Font(str(fpath)) @@ -576,7 +579,10 @@ def createFontList(fontfiles, fontext='ttf'): verbose.report("Cannot handle unicode filenames") #print >> sys.stderr, 'Bad file is', fpath continue - prop = ttfFontProperty(font) + try: + prop = ttfFontProperty(font) + except KeyError: + continue fontlist.append(prop) return fontlist -- 2.20.1