diff options
author | Li Zhou <li.zhou@windriver.com> | 2016-03-01 13:23:33 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-03-09 16:58:12 +0000 |
commit | 3f5725c8458e31a2403ba643a5de0ada42f7e277 (patch) | |
tree | 86fa89813272186ccdacbabefd6cfbc9f633a24c | |
parent | 433d866a0a77e8388d616f48abc6e7175365bd45 (diff) | |
download | poky-3f5725c8458e31a2403ba643a5de0ada42f7e277.tar.gz |
fontconfig: Revert changes made to FcConfigAppFontAddDir() recently
Backport <commit 46ec6a52d4cc447cc3ff4a13b2067ecb76c9db2e> from
fontconfig upstream <http://cgit.freedesktop.org/fontconfig/> to solve
issue: fontconfig changes break pybootchartgui tool generating bootchart
png file.
(From OE-Core rev: 563922edefee882a04622ab0d78c25c61dfd851c)
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-graphics/fontconfig/fontconfig/0001-Revert-changes-made-to-FcConfigAppFontAddDir-recentl.patch | 132 | ||||
-rw-r--r-- | meta/recipes-graphics/fontconfig/fontconfig_2.11.94.bb | 1 |
2 files changed, 133 insertions, 0 deletions
diff --git a/meta/recipes-graphics/fontconfig/fontconfig/0001-Revert-changes-made-to-FcConfigAppFontAddDir-recentl.patch b/meta/recipes-graphics/fontconfig/fontconfig/0001-Revert-changes-made-to-FcConfigAppFontAddDir-recentl.patch new file mode 100644 index 0000000000..f2fd5d4731 --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig/0001-Revert-changes-made-to-FcConfigAppFontAddDir-recentl.patch | |||
@@ -0,0 +1,132 @@ | |||
1 | From 46ec6a52d4cc447cc3ff4a13b2067ecb76c9db2e Mon Sep 17 00:00:00 2001 | ||
2 | From: Behdad Esfahbod <behdad@behdad.org> | ||
3 | Date: Fri, 26 Jun 2015 17:02:13 -0700 | ||
4 | Subject: [PATCH] Revert changes made to FcConfigAppFontAddDir() recently | ||
5 | |||
6 | In 32ac7c75e8db0135ef37cf86f92d8b9be000c8bb the behavior of | ||
7 | FcConfigAppFontAddFile/Dir() were changed to return false | ||
8 | if not fonts were found. While this is welldefined and useful | ||
9 | for AddFile(), it's quite problematic for AddDir(). For example, | ||
10 | if the directory is empty, is that a failure or success? Worse, | ||
11 | the false value from AddDir() was being propagated all the way | ||
12 | to FcInit() returning false now. This only happened upon memory | ||
13 | allocation failure before, and some clients assert that FcInit() | ||
14 | is successful. | ||
15 | |||
16 | With this change, AddDir() is reverted back to what it was. | ||
17 | AddFont() change (which was actually in fcdir.c) from the original | ||
18 | commit is left in. | ||
19 | |||
20 | Upstream-Status: backport | ||
21 | |||
22 | Signed-off-by: Li Zhou <li.zhou@windriver.com> | ||
23 | --- | ||
24 | doc/fcconfig.fncs | 2 +- | ||
25 | src/fccfg.c | 29 +++++++++++------------------ | ||
26 | src/fcint.h | 3 --- | ||
27 | src/fcstr.c | 8 -------- | ||
28 | 4 files changed, 12 insertions(+), 30 deletions(-) | ||
29 | |||
30 | Index: fontconfig-2.11.94/doc/fcconfig.fncs | ||
31 | =================================================================== | ||
32 | --- fontconfig-2.11.94.orig/doc/fcconfig.fncs | ||
33 | +++ fontconfig-2.11.94/doc/fcconfig.fncs | ||
34 | @@ -232,7 +232,7 @@ the current configuration is used. | ||
35 | @DESC@ | ||
36 | Scans the specified directory for fonts, adding each one found to the | ||
37 | application-specific set of fonts. Returns FcFalse | ||
38 | -if the fonts cannot be added (due to allocation failure or no fonts found). | ||
39 | +if the fonts cannot be added (due to allocation failure). | ||
40 | Otherwise returns FcTrue. If <parameter>config</parameter> is NULL, | ||
41 | the current configuration is used. | ||
42 | @@ | ||
43 | Index: fontconfig-2.11.94/src/fccfg.c | ||
44 | =================================================================== | ||
45 | --- fontconfig-2.11.94.orig/src/fccfg.c | ||
46 | +++ fontconfig-2.11.94/src/fccfg.c | ||
47 | @@ -368,7 +368,6 @@ FcConfigAddDirList (FcConfig *config, Fc | ||
48 | FcStrList *dirlist; | ||
49 | FcChar8 *dir; | ||
50 | FcCache *cache; | ||
51 | - FcBool ret = FcFalse; | ||
52 | |||
53 | dirlist = FcStrListCreate (dirSet); | ||
54 | if (!dirlist) | ||
55 | @@ -383,10 +382,9 @@ FcConfigAddDirList (FcConfig *config, Fc | ||
56 | continue; | ||
57 | FcConfigAddCache (config, cache, set, dirSet); | ||
58 | FcDirCacheUnload (cache); | ||
59 | - ret = FcTrue; | ||
60 | } | ||
61 | FcStrListDone (dirlist); | ||
62 | - return ret; | ||
63 | + return FcTrue; | ||
64 | } | ||
65 | |||
66 | /* | ||
67 | @@ -2199,7 +2197,6 @@ FcConfigAppFontAddFile (FcConfig *con | ||
68 | FcStrSet *subdirs; | ||
69 | FcStrList *sublist; | ||
70 | FcChar8 *subdir; | ||
71 | - FcBool ret = FcFalse; | ||
72 | |||
73 | if (!config) | ||
74 | { | ||
75 | @@ -2229,19 +2226,16 @@ FcConfigAppFontAddFile (FcConfig *con | ||
76 | FcStrSetDestroy (subdirs); | ||
77 | return FcFalse; | ||
78 | } | ||
79 | - if (subdirs->num == 0) | ||
80 | - ret = FcTrue; | ||
81 | - else if ((sublist = FcStrListCreate (subdirs))) | ||
82 | + if ((sublist = FcStrListCreate (subdirs))) | ||
83 | { | ||
84 | while ((subdir = FcStrListNext (sublist))) | ||
85 | { | ||
86 | - if (FcConfigAppFontAddDir (config, subdir)) | ||
87 | - ret = FcTrue; | ||
88 | + FcConfigAppFontAddDir (config, subdir); | ||
89 | } | ||
90 | FcStrListDone (sublist); | ||
91 | } | ||
92 | FcStrSetDestroy (subdirs); | ||
93 | - return ret; | ||
94 | + return FcTrue; | ||
95 | } | ||
96 | |||
97 | FcBool | ||
98 | @@ -2250,7 +2244,6 @@ FcConfigAppFontAddDir (FcConfig *con | ||
99 | { | ||
100 | FcFontSet *set; | ||
101 | FcStrSet *dirs; | ||
102 | - FcBool ret = FcTrue; | ||
103 | |||
104 | if (!config) | ||
105 | { | ||
106 | @@ -2269,8 +2262,8 @@ FcConfigAppFontAddDir (FcConfig *con | ||
107 | set = FcFontSetCreate (); | ||
108 | if (!set) | ||
109 | { | ||
110 | - ret = FcFalse; | ||
111 | - goto bail; | ||
112 | + FcStrSetDestroy (dirs); | ||
113 | + return FcFalse; | ||
114 | } | ||
115 | FcConfigSetFonts (config, set, FcSetApplication); | ||
116 | } | ||
117 | @@ -2278,10 +2271,12 @@ FcConfigAppFontAddDir (FcConfig *con | ||
118 | FcStrSetAddFilename (dirs, dir); | ||
119 | |||
120 | if (!FcConfigAddDirList (config, FcSetApplication, dirs)) | ||
121 | - ret = FcFalse; | ||
122 | -bail: | ||
123 | + { | ||
124 | + FcStrSetDestroy (dirs); | ||
125 | + return FcFalse; | ||
126 | + } | ||
127 | FcStrSetDestroy (dirs); | ||
128 | - return ret; | ||
129 | + return FcTrue; | ||
130 | } | ||
131 | |||
132 | void | ||
diff --git a/meta/recipes-graphics/fontconfig/fontconfig_2.11.94.bb b/meta/recipes-graphics/fontconfig/fontconfig_2.11.94.bb index b3bc7ebf4a..b427947a93 100644 --- a/meta/recipes-graphics/fontconfig/fontconfig_2.11.94.bb +++ b/meta/recipes-graphics/fontconfig/fontconfig_2.11.94.bb | |||
@@ -22,6 +22,7 @@ DEPENDS = "expat freetype zlib" | |||
22 | 22 | ||
23 | SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ | 23 | SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ |
24 | file://revert-static-pkgconfig.patch \ | 24 | file://revert-static-pkgconfig.patch \ |
25 | file://0001-Revert-changes-made-to-FcConfigAppFontAddDir-recentl.patch \ | ||
25 | " | 26 | " |
26 | SRC_URI[md5sum] = "479be870c7f83f15f87bac085b61d641" | 27 | SRC_URI[md5sum] = "479be870c7f83f15f87bac085b61d641" |
27 | SRC_URI[sha256sum] = "73f6d323c7bcfbde25d78397675191d55b8f4139132c6a9444410f3a2d8a9a95" | 28 | SRC_URI[sha256sum] = "73f6d323c7bcfbde25d78397675191d55b8f4139132c6a9444410f3a2d8a9a95" |