s->close_first was on the wrong side of the inequality. Caught by blender. Thanks to AndrewR for reporting this.tags/mesa-7.9-rc1
| @@ -48,7 +48,7 @@ util_split_prim_next(struct util_split_prim *s, unsigned max_verts) | |||
| } | |||
| } | |||
| if (s->p_start + s->close_first + max_verts >= s->p_end) { | |||
| if ((s->p_end - s->p_start) + s->close_first <= max_verts) { | |||
| s->emit(s->priv, s->p_start, s->p_end - s->p_start); | |||
| if (s->close_first) | |||
| s->emit(s->priv, s->start, 1); | |||