in_out = 0; for (i = active; i < inactive - 1; i++) { j = i; if (fill_rule == CAIRO_FILL_RULE_WINDING) { in_out = 0; if (edges[i].clockWise) in_out++; else in_out--; for (++i; i < num_edges && in_out != 0; i++) { if (edges[i].clockWise) in_out++; else in_out--; } if (in_out == 0) continue; } else { in_out++; if ((in_out & 1) == 0) continue; } _cairo_traps_add_trap (traps, y, y_next, &edges[j].edge, &edges[i].edge); }