summaryrefslogtreecommitdiff
path: root/Build/source/libs/freetype2/freetype-src/src
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-07-12 09:58:12 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2016-07-12 09:58:12 +0000
commit365ceccabbde024c6f64c1f4bd3a8347cb52c7d0 (patch)
treeb25eb39fd50c96e458870e6ec26eca048d378503 /Build/source/libs/freetype2/freetype-src/src
parentaa4b6164f3cf1da79fa0d50d02499b250c98be6f (diff)
freetype 2.6.5
git-svn-id: svn://tug.org/texlive/trunk@41681 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/freetype2/freetype-src/src')
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c23
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c8
2 files changed, 12 insertions, 19 deletions
diff --git a/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c b/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c
index f0e380e4085..0bf3ac6ffb7 100644
--- a/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c
+++ b/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c
@@ -1893,27 +1893,28 @@ typedef ptrdiff_t FT_PtrDist;
gray_convert_glyph( RAS_ARG )
{
TCell buffer[FT_MAX_GRAY_POOL];
- const int band_size = FT_MAX_GRAY_POOL / 8;
- gray_TBand bands[32];
- gray_TBand* band;
- int n, num_bands;
+ TCoord band_size = FT_MAX_GRAY_POOL / 8;
+ int num_bands;
TCoord min, max, max_y;
+ gray_TBand bands[32]; /* enough to accommodate bisections */
+ gray_TBand* band;
/* set up vertical bands */
- num_bands = (int)( ( ras.max_ey - ras.min_ey ) / band_size );
- if ( num_bands == 0 )
- num_bands = 1;
- if ( num_bands >= 39 )
- num_bands = 39;
+ if ( ras.count_ey > band_size )
+ {
+ /* two divisions rounded up */
+ num_bands = (int)( ( ras.count_ey + band_size - 1) / band_size );
+ band_size = ( ras.count_ey + num_bands - 1 ) / num_bands;
+ }
min = ras.min_ey;
max_y = ras.max_ey;
- for ( n = 0; n < num_bands; n++, min = max )
+ for ( ; min < max_y; min = max )
{
max = min + band_size;
- if ( n == num_bands - 1 || max > max_y )
+ if ( max > max_y )
max = max_y;
bands[0].min = min;
diff --git a/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c b/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c
index 2e3f9ef9d72..8fe83c5ea83 100644
--- a/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c
+++ b/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c
@@ -76,14 +76,6 @@
/*************************************************************************/
/* */
- /* Instruction dispatch function, as used by the interpreter. */
- /* */
- typedef void (*TInstruction_Function)( TT_ExecContext exc,
- FT_Long* args );
-
-
- /*************************************************************************/
- /* */
/* Two simple bounds-checking macros. */
/* */
#define BOUNDS( x, n ) ( (FT_UInt)(x) >= (FT_UInt)(n) )