[ftraster] Fix rendering.

Problem reported by Tom Bishop <wenlin@wenlin.com>; see
thread starting with

  http://lists.gnu.org/archive/html/freetype/2010-10/msg00049.html

* src/raster/ftraster.c (Line_Up): Replace FMulDiv with SMulDiv
since the involved multiplication exceeds 32 bits.
This commit is contained in:
Werner Lemberg 2010-10-28 08:33:28 +02:00
parent 875439cfce
commit f0987abdc2
2 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,15 @@
2010-10-28 Werner Lemberg <wl@gnu.org>
[ftraster] Fix rendering.
Problem reported by Tom Bishop <wenlin@wenlin.com>; see
thread starting with
http://lists.gnu.org/archive/html/freetype/2010-10/msg00049.html
* src/raster/ftraster.c (Line_Up): Replace FMulDiv with SMulDiv
since the involved multiplication exceeds 32 bits.
2010-10-25 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
Revert a change of `_idx' type in FTC_CACHE_LOOKUP_CMP().

View File

@ -1094,7 +1094,7 @@
return SUCCESS;
else
{
x1 += FMulDiv( Dx, ras.precision - f1, Dy );
x1 += SMulDiv( Dx, ras.precision - f1, Dy );
e1 += 1;
}
}
@ -1122,13 +1122,13 @@
if ( Dx > 0 )
{
Ix = SMulDiv( ras.precision, Dx, Dy);
Ix = SMulDiv( ras.precision, Dx, Dy);
Rx = ( ras.precision * Dx ) % Dy;
Dx = 1;
}
else
{
Ix = SMulDiv( ras.precision, -Dx, Dy) * -1;
Ix = SMulDiv( ras.precision, -Dx, Dy) * -1;
Rx = ( ras.precision * -Dx ) % Dy;
Dx = -1;
}