1 diff -prudN e:\freetype-2.6\src/autofit/afcjk.c e:\reactos\lib\3rdparty\freetype\src/autofit/afcjk.c
2 --- e:\freetype-2.6\src/autofit/afcjk.c 2015-04-20 21:52:41 +0100
3 +++ e:\reactos\lib\3rdparty\freetype\src/autofit/afcjk.c 2015-09-07 22:38:13 +0100
7 /* scan the array of segments in each direction */
9 + AF_GlyphHintsRec *hints = malloc(sizeof(AF_GlyphHintsRec));
11 AF_GlyphHintsRec hints[1];
21 + AF_CJKMetricsRec *dummy = malloc(sizeof(AF_CJKMetricsRec));
23 AF_CJKMetricsRec dummy[1];
25 AF_Scaler scaler = &dummy->root.scaler;
27 #ifdef FT_CONFIG_OPTION_PIC
39 af_glyph_hints_done( hints );
47 diff -prudN e:\freetype-2.6\src/autofit/aflatin.c e:\reactos\lib\3rdparty\freetype\src/autofit/aflatin.c
48 --- e:\freetype-2.6\src/autofit/aflatin.c 2015-04-20 21:52:58 +0100
49 +++ e:\reactos\lib\3rdparty\freetype\src/autofit/aflatin.c 2015-09-08 11:08:25 +0100
53 /* scan the array of segments in each direction */
55 + AF_GlyphHintsRec *hints = malloc(sizeof(AF_GlyphHintsRec));
57 AF_GlyphHintsRec hints[1];
67 + AF_LatinMetricsRec *dummy = malloc(sizeof(AF_LatinMetricsRec));
69 AF_LatinMetricsRec dummy[1];
71 AF_Scaler scaler = &dummy->root.scaler;
73 #ifdef FT_CONFIG_OPTION_PIC
85 af_glyph_hints_done( hints );
94 diff -prudN e:\freetype-2.6\src/autofit/afmodule.c e:\reactos\lib\3rdparty\freetype\src/autofit/afmodule.c
95 --- e:\freetype-2.6\src/autofit/afmodule.c 2015-06-07 05:44:38 +0100
96 +++ e:\reactos\lib\3rdparty\freetype\src/autofit/afmodule.c 2015-09-07 20:58:52 +0100
100 #else /* !FT_DEBUG_AUTOFIT */
103 + AF_GlyphHintsRec *hints = malloc(sizeof(AF_GlyphHintsRec));
104 + AF_LoaderRec *loader = malloc(sizeof(AF_LoaderRec));
106 AF_GlyphHintsRec hints[1];
107 AF_LoaderRec loader[1];
113 af_loader_done( loader );
114 af_glyph_hints_done( hints );
123 #endif /* !FT_DEBUG_AUTOFIT */
124 diff -prudN e:\freetype-2.6\src/base/ftbitmap.c e:\reactos\lib\3rdparty\freetype\src/base/ftbitmap.c
125 --- e:\freetype-2.6\src/base/ftbitmap.c 2015-03-11 06:47:11 +0100
126 +++ e:\reactos\lib\3rdparty\freetype\src/base/ftbitmap.c 2015-09-07 17:20:37 +0100
129 FT_Int val = ss[0]; /* avoid a byte->int cast on each line */
133 + tt[0] = (FT_Byte)( ( val & 0x80 ) ? 0xff : 0);
134 + tt[1] = (FT_Byte)( ( val & 0x40 ) ? 0xff : 0);
135 + tt[2] = (FT_Byte)( ( val & 0x20 ) ? 0xff : 0);
136 + tt[3] = (FT_Byte)( ( val & 0x10 ) ? 0xff : 0);
137 + tt[4] = (FT_Byte)( ( val & 0x08 ) ? 0xff : 0);
138 + tt[5] = (FT_Byte)( ( val & 0x04 ) ? 0xff : 0);
139 + tt[6] = (FT_Byte)( ( val & 0x02 ) ? 0xff : 0);
140 + tt[7] = (FT_Byte)( ( val & 0x01 ) ? 0xff : 0);
142 tt[0] = (FT_Byte)( ( val & 0x80 ) >> 7 );
143 tt[1] = (FT_Byte)( ( val & 0x40 ) >> 6 );
144 tt[2] = (FT_Byte)( ( val & 0x20 ) >> 5 );
146 tt[5] = (FT_Byte)( ( val & 0x04 ) >> 2 );
147 tt[6] = (FT_Byte)( ( val & 0x02 ) >> 1 );
148 tt[7] = (FT_Byte)( val & 0x01 );
158 + tt[0] = (FT_Byte)( ( val & 0x80 ) ? 0xff : 0);
160 tt[0] = (FT_Byte)( ( val & 0x80 ) >> 7);
165 diff -prudN e:\freetype-2.6\src/cff/cf2intrp.c e:\reactos\lib\3rdparty\freetype\src/cff/cf2intrp.c
166 --- e:\freetype-2.6\src/cff/cf2intrp.c 2015-05-12 06:22:36 +0100
167 +++ e:\reactos\lib\3rdparty\freetype\src/cff/cf2intrp.c 2015-09-08 10:46:46 +0100
169 CF2_ArrStackRec vStemHintArray;
171 CF2_HintMaskRec hintMask;
173 + CF2_GlyphPathRec *glyphPath = malloc(sizeof(CF2_GlyphPathRec));
174 +/* Ugly but it allows us to reduce the diff */
175 +#define glyphPath (*glyphPath)
177 CF2_GlyphPathRec glyphPath;
181 /* initialize the remaining objects */
182 @@ -1197,7 +1203,13 @@
183 * discard `counterMask' and `counterHintMap'.
187 + CF2_HintMapRec *counterHintMap = malloc(sizeof(CF2_HintMapRec));
188 +/* Ugly but it allows us to reduce the diff */
189 +#define counterHintMap (*counterHintMap)
191 CF2_HintMapRec counterHintMap;
193 CF2_HintMaskRec counterMask;
196 @@ -1218,6 +1230,9 @@
201 + free(&counterHintMap);
206 @@ -1564,6 +1579,12 @@
212 +#undef counterHintMap
219 diff -prudN e:\freetype-2.6\src/cid/cidgload.c e:\reactos\lib\3rdparty\freetype\src/cid/cidgload.c
220 --- e:\freetype-2.6\src/cid/cidgload.c 2015-04-16 06:02:23 +0100
221 +++ e:\reactos\lib\3rdparty\freetype\src/cid/cidgload.c 2015-09-08 10:59:15 +0100
224 CID_GlyphSlot glyph = (CID_GlyphSlot)cidglyph;
227 + T1_DecoderRec *decoder = malloc(sizeof(T1_DecoderRec));
228 +/* Ugly but it allows us to reduce the diff */
229 +#define decoder (*decoder)
231 T1_DecoderRec decoder;
233 CID_Face face = (CID_Face)cidglyph->face;
247 diff -prudN e:\freetype-2.6\src/raster/ftraster.c e:\reactos\lib\3rdparty\freetype\src/raster/ftraster.c
248 --- e:\freetype-2.6\src/raster/ftraster.c 2015-06-02 10:21:17 +0100
249 +++ e:\reactos\lib\3rdparty\freetype\src/raster/ftraster.c 2015-09-08 11:09:33 +0100
250 @@ -3136,9 +3136,15 @@
251 const FT_Outline* outline = (const FT_Outline*)params->source;
252 const FT_Bitmap* target_map = params->target;
256 + black_TWorker *worker;
259 black_TWorker worker[1];
261 Long buffer[FT_MAX( FT_RENDER_POOL_SIZE, 2048 ) / sizeof ( Long )];
266 @@ -3175,13 +3181,29 @@
267 if ( !target_map->buffer )
268 return FT_THROW( Invalid );
271 + worker = malloc(sizeof(black_TWorker));
272 + buffer = malloc(FT_MAX(FT_RENDER_POOL_SIZE, 2048));
275 ras.outline = *outline;
276 ras.target = *target_map;
278 worker->buff = buffer;
280 + worker->sizeBuff = buffer + (FT_MAX(FT_RENDER_POOL_SIZE, 2048) / sizeof(Long));
282 worker->sizeBuff = (&buffer)[1]; /* Points to right after buffer. */
286 + ret = Render_Glyph(RAS_VAR);
291 return Render_Glyph( RAS_VAR );
296 diff -prudN e:\freetype-2.6\src/smooth/ftgrays.c e:\reactos\lib\3rdparty\freetype\src/smooth/ftgrays.c
297 --- e:\freetype-2.6\src/smooth/ftgrays.c 2015-03-11 06:47:11 +0100
298 +++ e:\reactos\lib\3rdparty\freetype\src/smooth/ftgrays.c 2015-09-08 09:57:56 +0100
299 @@ -1940,10 +1940,17 @@ typedef ptrdiff_t FT_PtrDist;
300 const FT_Outline* outline = (const FT_Outline*)params->source;
301 const FT_Bitmap* target_map = params->target;
304 + gray_TWorker *worker;
307 + long buffer_size = FT_MAX(FT_RENDER_POOL_SIZE, 2048);
309 gray_TWorker worker[1];
311 TCell buffer[FT_MAX( FT_RENDER_POOL_SIZE, 2048 ) / sizeof ( TCell )];
312 long buffer_size = sizeof ( buffer );
314 int band_size = (int)( buffer_size /
315 (long)( sizeof ( TCell ) * 8 ) );
317 @@ -1983,6 +1990,10 @@ typedef ptrdiff_t FT_PtrDist;
318 if ( !( params->flags & FT_RASTER_FLAG_AA ) )
319 return FT_THROW( Invalid_Mode );
322 + worker = malloc(sizeof(gray_TWorker));
325 /* compute clipping box */
326 if ( !( params->flags & FT_RASTER_FLAG_DIRECT ) )
328 @@ -2002,6 +2013,10 @@ typedef ptrdiff_t FT_PtrDist;
329 ras.clip_box.yMax = 32767L;
333 + buffer = malloc(buffer_size);
336 gray_init_cells( RAS_VAR_ buffer, buffer_size );
338 ras.outline = *outline;
339 @@ -2023,7 +2038,14 @@ typedef ptrdiff_t FT_PtrDist;
340 ras.render_span_data = &ras;
344 + ret = gray_convert_glyph(RAS_VAR);
349 return gray_convert_glyph( RAS_VAR );
354 diff -prudN e:\freetype-2.6\src/type1/t1gload.c e:\reactos\lib\3rdparty\freetype\src/type1/t1gload.c
355 --- e:\freetype-2.6\src/type1/t1gload.c 2015-04-13 17:14:02 +0100
356 +++ e:\reactos\lib\3rdparty\freetype\src/type1/t1gload.c 2015-09-08 10:55:18 +0100
358 FT_Pos* max_advance )
362 + T1_DecoderRec *decoder = malloc(sizeof(T1_DecoderRec));
363 +/* Ugly but it allows us to reduce the diff */
364 +#define decoder (*decoder)
366 T1_DecoderRec decoder;
369 T1_Font type1 = &face->type1;
370 PSAux_Service psaux = (PSAux_Service)face->psaux;
372 FT_RENDER_MODE_NORMAL,
384 decoder.builder.metrics_only = 1;
385 decoder.builder.load_points = 0;
389 psaux->t1_decoder_funcs->done( &decoder );
401 T1_Face face = (T1_Face)t1face;
403 + T1_DecoderRec *decoder = malloc(sizeof(T1_DecoderRec));
404 +/* Ugly but it allows us to reduce the diff */
405 +#define decoder (*decoder)
407 T1_DecoderRec decoder;
409 T1_Font type1 = &face->type1;
410 PSAux_Service psaux = (PSAux_Service)face->psaux;
413 for ( nn = 0; nn < count; nn++ )
423 FT_RENDER_MODE_NORMAL,
435 decoder.builder.metrics_only = 1;
436 decoder.builder.load_points = 0;
451 T1_GlyphSlot glyph = (T1_GlyphSlot)t1glyph;
454 + T1_DecoderRec *decoder = malloc(sizeof(T1_DecoderRec));
455 +/* Ugly but it allows us to reduce the diff */
456 +#define decoder (*decoder)
458 T1_DecoderRec decoder;
460 T1_Face face = (T1_Face)t1glyph->face;
462 T1_Font type1 = &face->type1;
464 if ( must_finish_decoder )
465 decoder_funcs->done( &decoder );