shithub: freetype+ttf2subf

Download patch

ref: b0aacff474a4514566c287001e0fc9918756be32
parent: 3576487add2f0e9691e8c43f8b0cd8e61aebf14f
author: Alexei Podtelezhnikov <[email protected]>
date: Sat Oct 1 08:55:33 EDT 2016

[smooth] Remove impossibility.

* src/smooth/ftgrays.c (TWorker): Rearrange fields.
(gray_convert_glyph): Remove impossible condition and clean up.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-10-01  Alexei Podtelezhnikov  <[email protected]>
+
+	[smooth] Remove impossibility.
+
+	* src/smooth/ftgrays.c (TWorker): Rearrange fields.
+	(gray_convert_glyph): Remove impossible condition and clean up.
+
 2016-09-29  Werner Lemberg  <[email protected]>
 
 	[pcf] Enrich family name with foundry name and glyph width info.
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -443,6 +443,7 @@
     TCoord  cover;
     int     invalid;
 
+    PCell*      ycells;
     PCell       cells;
     FT_PtrDist  max_cells;
     FT_PtrDist  num_cells;
@@ -455,8 +456,6 @@
     FT_Raster_Span_Func  render_span;
     void*                render_span_data;
 
-    PCell*     ycells;
-
   } gray_TWorker, *gray_PWorker;
 
 #if defined( _MSC_VER )
@@ -1792,11 +1791,9 @@
           cell_start = ( ycount * sizeof ( PCell ) + sizeof ( TCell ) - 1 ) /
                        sizeof ( TCell );
 
-          if ( FT_MAX_GRAY_POOL - cell_start < 2 )
-            goto ReduceBands;
-
           ras.cells     = buffer + cell_start;
           ras.max_cells = (FT_PtrDist)( FT_MAX_GRAY_POOL - cell_start );
+          ras.num_cells = 0;
 
           ras.ycells = (PCell*)buffer;
           while ( ycount )
@@ -1803,7 +1800,6 @@
             ras.ycells[--ycount] = NULL;
         }
 
-        ras.num_cells = 0;
         ras.invalid   = 1;
         ras.min_ey    = band[1];
         ras.max_ey    = band[0];
@@ -1819,7 +1815,6 @@
         else if ( error != ErrRaster_Memory_Overflow )
           return 1;
 
-      ReduceBands:
         /* render pool overflow; we will reduce the render band by half */
         width >>= 1;