[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2] master 9cd403bc9: * src/raster/ftraster.c (Line_Up, Bezier_U
From: |
Werner Lemberg |
Subject: |
[freetype2] master 9cd403bc9: * src/raster/ftraster.c (Line_Up, Bezier_Up): Check "between" earlier. |
Date: |
Sat, 11 Nov 2023 10:23:19 -0500 (EST) |
branch: master
commit 9cd403bc9f670603f5f0ce171fc8d470ec78e7be
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>
* src/raster/ftraster.c (Line_Up, Bezier_Up): Check "between" earlier.
---
src/raster/ftraster.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/src/raster/ftraster.c b/src/raster/ftraster.c
index dd3858aea..de1c35f5e 100644
--- a/src/raster/ftraster.c
+++ b/src/raster/ftraster.c
@@ -942,6 +942,9 @@
e2 = y2 > maxy ? maxy : FLOOR( y2 );
e = y1 < miny ? miny : CEILING( y1 );
+ if ( e2 < e ) /* between scanlines */
+ goto Fin;
+
if ( ras.fresh )
{
ras.cProfile->start = (Int)TRUNC( e );
@@ -953,9 +956,6 @@
ras.joint = (Bool)( y2 == e2 );
- if ( e2 < e )
- goto Fin;
-
size = (Int)TRUNC( e2 - e ) + 1;
if ( top + size >= ras.maxBuff )
@@ -1105,8 +1105,6 @@
Long y1, y2, e, e2, dy;
Long dx, x2;
- TPoint* start_arc;
-
PLong top;
@@ -1120,6 +1118,9 @@
e2 = y2 > maxy ? maxy : FLOOR( y2 );
e = y1 < miny ? miny : CEILING( y1 );
+ if ( e2 < e ) /* between scanlines */
+ goto Fin;
+
if ( ras.fresh )
{
ras.cProfile->start = (Int)TRUNC( e );
@@ -1137,18 +1138,13 @@
ras.joint = (Bool)( y2 == e2 );
- if ( e2 < e )
- goto Fin;
-
if ( ( top + TRUNC( e2 - e ) + 1 ) >= ras.maxBuff )
{
ras.error = FT_THROW( Raster_Overflow );
return FAILURE;
}
- start_arc = arc;
-
- do
+ while ( e <= e2 )
{
y2 = arc[0].y;
x2 = arc[0].x;
@@ -1183,7 +1179,6 @@
arc -= degree;
}
}
- while ( e <= e2 );
Fin:
ras.top = top;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2] master 9cd403bc9: * src/raster/ftraster.c (Line_Up, Bezier_Up): Check "between" earlier.,
Werner Lemberg <=