* src/raster/ftraster.c (Insert_Y_Turn): Improve flow.
This commit is contained in:
parent
fab53f7b1f
commit
09ae6eb677
|
@ -609,29 +609,16 @@
|
||||||
static Bool
|
static Bool
|
||||||
Insert_Y_Turn( RAS_ARGS Int y )
|
Insert_Y_Turn( RAS_ARGS Int y )
|
||||||
{
|
{
|
||||||
PLong y_turns;
|
Int n = ras.numTurns;
|
||||||
Int n;
|
PLong y_turns = ras.maxBuff;
|
||||||
|
|
||||||
|
|
||||||
n = ras.numTurns - 1;
|
|
||||||
y_turns = ras.sizeBuff - ras.numTurns;
|
|
||||||
|
|
||||||
/* look for first y value that is <= */
|
/* look for first y value that is <= */
|
||||||
while ( n >= 0 && y < y_turns[n] )
|
while ( n-- && y < y_turns[n] )
|
||||||
n--;
|
;
|
||||||
|
|
||||||
/* if it is <, simply insert it, ignore if == */
|
/* if it is <, simply insert it, ignore if == */
|
||||||
if ( n >= 0 && y > y_turns[n] )
|
if ( n < 0 || y > y_turns[n] )
|
||||||
do
|
|
||||||
{
|
|
||||||
Int y2 = (Int)y_turns[n];
|
|
||||||
|
|
||||||
|
|
||||||
y_turns[n] = y;
|
|
||||||
y = y2;
|
|
||||||
} while ( --n >= 0 );
|
|
||||||
|
|
||||||
if ( n < 0 )
|
|
||||||
{
|
{
|
||||||
ras.maxBuff--;
|
ras.maxBuff--;
|
||||||
if ( ras.maxBuff <= ras.top )
|
if ( ras.maxBuff <= ras.top )
|
||||||
|
@ -639,8 +626,17 @@
|
||||||
ras.error = FT_THROW( Raster_Overflow );
|
ras.error = FT_THROW( Raster_Overflow );
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
do
|
||||||
|
{
|
||||||
|
Int y2 = (Int)y_turns[n];
|
||||||
|
|
||||||
|
|
||||||
|
y_turns[n] = y;
|
||||||
|
y = y2;
|
||||||
|
} while ( n-- >= 0 );
|
||||||
|
|
||||||
ras.numTurns++;
|
ras.numTurns++;
|
||||||
ras.sizeBuff[-ras.numTurns] = y;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
|
Loading…
Reference in New Issue