forked from conda-archive/conda-recipes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdouble-free.patch
161 lines (141 loc) · 5.78 KB
/
double-free.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
From 5f577462bd7cc8e2ca6fe4a1efecee6d8a95e7be Mon Sep 17 00:00:00 2001
From: Werner Lemberg <[email protected]>
Date: Wed, 25 Dec 2013 08:50:50 +0100
Subject: [PATCH] Fix Savannah bug #40997.
* src/bdf/bdfdrivr.c (BDF_Face_Init): Only use OR operator to
adjust face flags since FT_FACE_FLAG_EXTERNAL_STREAM might already
be set.
* src/cff/cffobjs.c (cff_face_init): Ditto.
* src/cid/cidobjs.c (cid_face_init): Ditto.
* src/pcf/pcfread.c (pcf_load_font): Ditto.
* src/pfr/pfrobjs.c (pfr_face_init): Ditto.
* src/type1/t1objs.c (T1_Face_Init): Ditto.
* src/type42/t42objs.c (T42_Face_Init): Ditto.
* src/winfonts/winfnt.c (FNT_Face_Init): Ditto.
---
src/bdf/bdfdrivr.c | 7 ++++---
src/cff/cffobjs.c | 2 +-
src/cid/cidobjs.c | 7 ++++---
src/pcf/pcfread.c | 7 ++++---
src/pfr/pfrobjs.c | 3 ++-
src/type1/t1objs.c | 8 ++++----
src/type42/t42objs.c | 6 +++---
src/winfonts/winfnt.c | 4 ++--
9 files changed, 39 insertions(+), 20 deletions(-)
diff --git a/src/bdf/bdfdrivr.c b/src/bdf/bdfdrivr.c
index caa142b..71150d7 100644
--- src/bdf/bdfdrivr.c
+++ src/bdf/bdfdrivr.c
@@ -400,9 +400,10 @@ THE SOFTWARE.
bdfface->num_faces = 1;
bdfface->face_index = 0;
- bdfface->face_flags = FT_FACE_FLAG_FIXED_SIZES |
- FT_FACE_FLAG_HORIZONTAL |
- FT_FACE_FLAG_FAST_GLYPHS;
+
+ bdfface->face_flags |= FT_FACE_FLAG_FIXED_SIZES |
+ FT_FACE_FLAG_HORIZONTAL |
+ FT_FACE_FLAG_FAST_GLYPHS;
prop = bdf_get_font_property( font, "SPACING" );
if ( prop && prop->format == BDF_ATOM &&
diff --git a/src/cff/cffobjs.c b/src/cff/cffobjs.c
index 29c3691..cac4ac2 100644
--- src/cff/cffobjs.c
+++ src/cff/cffobjs.c
@@ -866,7 +866,7 @@
flags |= FT_FACE_FLAG_KERNING;
#endif
- cffface->face_flags = flags;
+ cffface->face_flags |= flags;
/*******************************************************************/
/* */
diff --git a/src/cid/cidobjs.c b/src/cid/cidobjs.c
index 46555e2..5932ffa 100644
--- src/cid/cidobjs.c
+++ src/cid/cidobjs.c
@@ -355,9 +355,10 @@
cidface->num_charmaps = 0;
cidface->face_index = face_index;
- cidface->face_flags = FT_FACE_FLAG_SCALABLE | /* scalable outlines */
- FT_FACE_FLAG_HORIZONTAL | /* horizontal data */
- FT_FACE_FLAG_HINTER; /* has native hinter */
+
+ cidface->face_flags |= FT_FACE_FLAG_SCALABLE | /* scalable outlines */
+ FT_FACE_FLAG_HORIZONTAL | /* horizontal data */
+ FT_FACE_FLAG_HINTER; /* has native hinter */
if ( info->is_fixed_pitch )
cidface->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
diff --git a/src/pcf/pcfread.c b/src/pcf/pcfread.c
index ee41c5d..d936c58 100644
--- src/pcf/pcfread.c
+++ src/pcf/pcfread.c
@@ -1153,9 +1153,10 @@ THE SOFTWARE.
root->num_faces = 1;
root->face_index = 0;
- root->face_flags = FT_FACE_FLAG_FIXED_SIZES |
- FT_FACE_FLAG_HORIZONTAL |
- FT_FACE_FLAG_FAST_GLYPHS;
+
+ root->face_flags |= FT_FACE_FLAG_FIXED_SIZES |
+ FT_FACE_FLAG_HORIZONTAL |
+ FT_FACE_FLAG_FAST_GLYPHS;
if ( face->accel.constantWidth )
root->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
diff --git a/src/pfr/pfrobjs.c b/src/pfr/pfrobjs.c
index 8d3cd29..194d2df 100644
--- src/pfr/pfrobjs.c
+++ src/pfr/pfrobjs.c
@@ -137,7 +137,8 @@
pfrface->face_index = face_index;
pfrface->num_glyphs = phy_font->num_chars + 1;
- pfrface->face_flags = FT_FACE_FLAG_SCALABLE;
+
+ pfrface->face_flags |= FT_FACE_FLAG_SCALABLE;
/* if all characters point to the same gps_offset 0, we */
/* assume that the font only contains bitmaps */
diff --git a/src/type1/t1objs.c b/src/type1/t1objs.c
index 837b791..e11770f 100644
--- src/type1/t1objs.c
+++ src/type1/t1objs.c
@@ -364,10 +364,10 @@
root->num_glyphs = type1->num_glyphs;
root->face_index = 0;
- root->face_flags = FT_FACE_FLAG_SCALABLE |
- FT_FACE_FLAG_HORIZONTAL |
- FT_FACE_FLAG_GLYPH_NAMES |
- FT_FACE_FLAG_HINTER;
+ root->face_flags |= FT_FACE_FLAG_SCALABLE |
+ FT_FACE_FLAG_HORIZONTAL |
+ FT_FACE_FLAG_GLYPH_NAMES |
+ FT_FACE_FLAG_HINTER;
if ( info->is_fixed_pitch )
root->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
diff --git a/src/type42/t42objs.c b/src/type42/t42objs.c
index f5aa2ca..798ebdb 100644
--- src/type42/t42objs.c
+++ src/type42/t42objs.c
@@ -218,9 +218,9 @@
root->num_charmaps = 0;
root->face_index = 0;
- root->face_flags = FT_FACE_FLAG_SCALABLE |
- FT_FACE_FLAG_HORIZONTAL |
- FT_FACE_FLAG_GLYPH_NAMES;
+ root->face_flags |= FT_FACE_FLAG_SCALABLE |
+ FT_FACE_FLAG_HORIZONTAL |
+ FT_FACE_FLAG_GLYPH_NAMES;
if ( info->is_fixed_pitch )
root->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
diff --git a/src/winfonts/winfnt.c b/src/winfonts/winfnt.c
index 6843243..fd6fc55 100644
--- src/winfonts/winfnt.c
+++ src/winfonts/winfnt.c
@@ -743,8 +743,8 @@
root->face_index = face_index;
- root->face_flags = FT_FACE_FLAG_FIXED_SIZES |
- FT_FACE_FLAG_HORIZONTAL;
+ root->face_flags |= FT_FACE_FLAG_FIXED_SIZES |
+ FT_FACE_FLAG_HORIZONTAL;
if ( font->header.avg_width == font->header.max_width )
root->face_flags |= FT_FACE_FLAG_FIXED_WIDTH;
--
1.9.1