No. Your patch invalidates cubic-curve-finishing-contour, original
code (and my patch) handles it. See else side of if ( point =
limit), it would never hit with your patch.
OK, I'm bad at handling such boarder cases without having an actual
case which I can debug (your test case doesn't
While hunting another bug (still not sure mine/gcc/freetype, strange borkage
with type1 hinter, will report later), I found Decompose_Curve reads array past
allocated area, making valgrind unhappy:
=14635== Command: ./ftview 14 /usr/share/fonts/type1/gsfonts/a010013l.pfb
==14635== Parent PID:
Yuriy Kaminskiy wrote:
While hunting another bug (still not sure mine/gcc/freetype, strange borkage
with type1 hinter, will report later),
Looks like borkage was *my* bug, no need to worry about :-) [patch from OP still
valid]
___
Freetype-devel
- x3 = SCALED( point[ 0].x );
- y3 = SCALED( point[ 0].y );
if ( flipped )
{
SWAP_( x1, y1 );
SWAP_( x2, y2 );
-SWAP_( x3, y3 );
}
if ( point = limit )
{
+x3
Werner LEMBERG wrote:
- x3 = SCALED( point[ 0].x );
- y3 = SCALED( point[ 0].y );
if ( flipped )
{
SWAP_( x1, y1 );
SWAP_( x2, y2 );
-SWAP_( x3, y3 );
}
if ( point = limit )