Description: Don't remove cache dir if non-existent. Origin: upstream, http://code.google.com/p/font-manager/source/detail?r=261 Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=658328 --- src/lib/fm-fontutils.c | 16 ++++++++-------- src/ui/fontconfig.py | 8 +++++--- 2 files changed, 13 insertions(+), 11 deletions(-) --- font-manager.orig/src/lib/fm-fontutils.c +++ font-manager/src/lib/fm-fontutils.c @@ -72,8 +72,8 @@ FcListFiles() { FcChar8 *file; - FcPatternGetString(fontset->fonts[i], FC_FILE, 0, &file); - filelist = g_slist_prepend(filelist, g_strdup((const gchar *) file)); + if (FcPatternGetString(fontset->fonts[i], FC_FILE, 0, &file) == FcResultMatch) + filelist = g_slist_prepend(filelist, g_strdup((const gchar *) file)); } if (objectset) @@ -272,7 +272,7 @@ _get_base_font_info(FontInfo *fontinfo, PangoFontDescription *descr; /* Need to add this font to the configuration, it may not be there in the - * case where this the font is not installed yet or possibly just installed + * case where this font is not installed yet or possibly just installed */ FcConfigAppFontAddFile(FcConfigGetCurrent(), filepath); @@ -287,10 +287,10 @@ _get_base_font_info(FontInfo *fontinfo, FcChar8 *family, *style; - FcPatternGetString(fontset->fonts[i], FC_FAMILY, 0, &family); - FcPatternGetString(fontset->fonts[i], FC_STYLE, 0, &style); - ADD_PROP(fontinfo->family, family); - ADD_PROP(fontinfo->style, style); + if (FcPatternGetString(fontset->fonts[i], FC_FAMILY, 0, &family) == FcResultMatch) + ADD_PROP(fontinfo->family, family); + if (FcPatternGetString(fontset->fonts[i], FC_STYLE, 0, &style) == FcResultMatch) + ADD_PROP(fontinfo->style, style); } descr = pango_fc_font_description_from_pattern(pattern, FALSE); @@ -539,7 +539,7 @@ static const struct } NoticeData[] = { - {"Bigelow", "B&H"}, + {"Bigelow", "Bigelow & Holmes"}, {"Adobe", "Adobe"}, {"Bitstream", "Bitstream"}, {"Monotype", "Monotype"}, --- font-manager.orig/src/ui/fontconfig.py +++ font-manager/src/ui/fontconfig.py @@ -376,9 +376,11 @@ class ConfigEdit(gtk.Window): for name in self.cache.iterkeys(): discard_fontconfig_settings(self.cache[name]) self.save_settings(None) - os.unlink(join(CACHE_DIR, CACHED_SETTINGS)) - os.unlink(join(USER_FONT_CONFIG_DIR, - '25-{0}.conf'.format(self.selected_family.get_name()))) + cache = join(CACHE_DIR, CACHED_SETTINGS) + not exists(cache) or os.unlink(cache) + cache = join(USER_FONT_CONFIG_DIR, + '25-{0}.conf'.format(self.selected_family.get_name())) + not exists(cache) or os.unlink(cache) return def save_cache(self):