softpipe: Preserve/check the signal of the number of scanlines in an edge.

It can become negative in some weird triangles.
This commit is contained in:
José Fonseca 2010-04-18 09:48:55 +02:00
parent b609cfc7c9
commit 4272c01fbf

View file

@ -691,7 +691,7 @@ static void setup_tri_edges( struct setup_context *setup )
static void subtriangle( struct setup_context *setup,
struct edge *eleft,
struct edge *eright,
unsigned lines )
int lines )
{
const struct pipe_scissor_state *cliprect = &setup->softpipe->cliprect;
const int minx = (int) cliprect->minx;
@ -702,6 +702,7 @@ static void subtriangle( struct setup_context *setup,
int sy = (int)eleft->sy;
assert((int)eleft->sy == (int) eright->sy);
assert(lines >= 0);
/* clip top/bottom */
start_y = sy;