This commit is contained in:
Akira TAGOH 2017-12-23 14:11:07 +09:00
parent b59765abee
commit 1dba14a54d
2 changed files with 58 additions and 1 deletions

View File

@ -0,0 +1,53 @@
From 7ca28c2fedb34c1db5ee3116d335f15195859db0 Mon Sep 17 00:00:00 2001
From: Behdad Esfahbod <behdad@behdad.org>
Date: Mon, 18 Dec 2017 21:22:21 -0500
Subject: [PATCH 1/8] Don't crash
Not proper fix necessarily. But fixes this crash:
https://bugs.freedesktop.org/show_bug.cgi?id=101889#c81
---
src/fcmatch.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/fcmatch.c b/src/fcmatch.c
index 5d30cc7..95bb204 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -653,7 +653,7 @@ FcFontRenderPrepare (FcConfig *config,
if (!l)
goto bail0;
dir = FcStrDirname (FcValueString (&l->value));
- if (FcHashTableFind (config->alias_table, dir, (void **) &alias))
+ if (config && FcHashTableFind (config->alias_table, dir, (void **) &alias))
{
FcChar8 *base = FcStrBasename (FcValueString (&l->value));
FcChar8 *s = FcStrBuildFilename (alias, base, NULL);
--
2.14.3
From aa85a2b3b6b652c079e895865e800e3d9b60a5f5 Mon Sep 17 00:00:00 2001
From: Akira TAGOH <akira@tagoh.org>
Date: Tue, 19 Dec 2017 12:16:48 +0900
Subject: [PATCH 3/8] Try to get current instance of FcConfig as far as
possible
---
src/fcmatch.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/fcmatch.c b/src/fcmatch.c
index 95bb204..f06d98a 100644
--- a/src/fcmatch.c
+++ b/src/fcmatch.c
@@ -653,6 +653,8 @@ FcFontRenderPrepare (FcConfig *config,
if (!l)
goto bail0;
dir = FcStrDirname (FcValueString (&l->value));
+ if (!config)
+ config = FcConfigGetCurrent ();
if (config && FcHashTableFind (config->alias_table, dir, (void **) &alias))
{
FcChar8 *base = FcStrBasename (FcValueString (&l->value));
--
2.14.3

View File

@ -3,7 +3,7 @@
Summary: Font configuration and customization library Summary: Font configuration and customization library
Name: fontconfig Name: fontconfig
Version: 2.12.91 Version: 2.12.91
Release: 1%{?dist} Release: 2%{?dist}
# src/ftglue.[ch] is in Public Domain # src/ftglue.[ch] is in Public Domain
# src/fccache.c contains Public Domain code # src/fccache.c contains Public Domain code
# fc-case/CaseFolding.txt is in the UCD # fc-case/CaseFolding.txt is in the UCD
@ -17,6 +17,7 @@ Source2: fc-cache
# https://bugzilla.redhat.com/show_bug.cgi?id=140335 # https://bugzilla.redhat.com/show_bug.cgi?id=140335
Patch0: %{name}-sleep-less.patch Patch0: %{name}-sleep-less.patch
Patch1: %{name}-required-freetype-version.patch Patch1: %{name}-required-freetype-version.patch
Patch2: %{name}-fix-crash.patch
BuildRequires: expat-devel BuildRequires: expat-devel
BuildRequires: freetype-devel >= %{freetype_version} BuildRequires: freetype-devel >= %{freetype_version}
@ -153,6 +154,9 @@ HOME=/root /usr/bin/fc-cache -s
%doc fontconfig-devel.txt fontconfig-devel %doc fontconfig-devel.txt fontconfig-devel
%changelog %changelog
* Sat Dec 23 2017 Akira TAGOH <tagoh@redhat.com> - 2.12.91-2
- Fix crash (#1528706)
* Thu Dec 14 2017 Akira TAGOH <tagoh@redhat.com> - 2.12.91-1 * Thu Dec 14 2017 Akira TAGOH <tagoh@redhat.com> - 2.12.91-1
- New upstream release. - New upstream release.