diff --git a/ChangeLog b/ChangeLog index 6c67f87c8..183d012f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2016-10-01 Alexei Podtelezhnikov + + [smooth] Remove impossibility. + + * src/smooth/ftgrays.c (TWorker): Rearrange fields. + (gray_convert_glyph): Remove impossible condition and clean up. + 2016-09-29 Werner Lemberg [pcf] Enrich family name with foundry name and glyph width info. diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c index 114657e7e..7e83fb11f 100644 --- a/src/smooth/ftgrays.c +++ b/src/smooth/ftgrays.c @@ -443,6 +443,7 @@ typedef ptrdiff_t FT_PtrDist; TCoord cover; int invalid; + PCell* ycells; PCell cells; FT_PtrDist max_cells; FT_PtrDist num_cells; @@ -455,8 +456,6 @@ typedef ptrdiff_t FT_PtrDist; FT_Raster_Span_Func render_span; void* render_span_data; - PCell* ycells; - } gray_TWorker, *gray_PWorker; #if defined( _MSC_VER ) @@ -1792,18 +1791,15 @@ typedef ptrdiff_t FT_PtrDist; 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 ) 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 @@ typedef ptrdiff_t FT_PtrDist; else if ( error != ErrRaster_Memory_Overflow ) return 1; - ReduceBands: /* render pool overflow; we will reduce the render band by half */ width >>= 1;