diff --git a/src/cairo-path-stroke-polygon.c b/src/cairo-path-stroke-polygon.c index 2c8fe5e..3cdda0e 100644 --- a/src/cairo-path-stroke-polygon.c +++ b/src/cairo-path-stroke-polygon.c @@ -190,6 +190,7 @@ add_fan (struct stroker *stroker, _cairo_pen_find_active_ccw_vertices (pen, in_vector, out_vector, &start, &stop); + printf("start %d stop %d\n", start, stop); while (start != stop) { cairo_point_t p = *midpt; translate_point (&p, &pen->vertices[start].point); diff --git a/src/cairo-pen.c b/src/cairo-pen.c index 61be0e8..7818574 100644 --- a/src/cairo-pen.c +++ b/src/cairo-pen.c @@ -449,7 +449,7 @@ _cairo_pen_find_active_ccw_vertices (const cairo_pen_t *pen, hi = i; i = (lo + hi) >> 1; } while (hi - lo > 1); - if (_cairo_slope_compare (in, &pen->vertices[i].slope_ccw) < 0) + if (_cairo_slope_compare (in, &pen->vertices[i].slope_ccw) >= 0) if (++i == pen->num_vertices) i = 0; *start = i;