diff --git a/ChangeLog b/ChangeLog index c95739872..f6b3d5207 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-11-15 Alexei Podtelezhnikov + + [base] Fix integer overflows in dd5718c7d67a. + + * src/base/ftoutln.c (FT_Outline_EmboldenXY): Use FT_MulDiv. + 2012-11-15 Werner Lemberg [autofit] Trace stem widths. diff --git a/src/base/ftoutln.c b/src/base/ftoutln.c index 120875276..c4fd2660a 100644 --- a/src/base/ftoutln.c +++ b/src/base/ftoutln.c @@ -968,13 +968,13 @@ if ( orientation == FT_ORIENTATION_TRUETYPE ) q = -q; - if ( xstrength * q < d * l ) + if ( FT_MulDiv( xstrength, q, l ) < d ) shift.x = FT_MulDiv( shift.x, xstrength, d ); else shift.x = FT_MulDiv( shift.x, l, q ); - if ( ystrength * q < d * l ) + if ( FT_MulDiv( ystrength, q, l ) < d ) shift.y = FT_MulDiv( shift.y, ystrength, d ); else shift.y = FT_MulDiv( shift.y, l, q );