st/mesa: restore draw rasterization stage after rasterpos

This fixes invalid calls to rastpos_point/line/tri() that can occur
when glRasterPos() is called while in feedback or selection mode.
This commit is contained in:
Brian Paul 2010-02-12 17:16:10 -07:00
parent a1025ec041
commit b3c7dc6ff2

View file

@ -251,6 +251,14 @@ st_RasterPos(GLcontext *ctx, const GLfloat v[4])
/* draw the point */
st_feedback_draw_vbo(ctx, rs->arrays, &rs->prim, 1, NULL, GL_TRUE, 0, 1);
/* restore draw's rasterization stage depending on rendermode */
if (ctx->RenderMode == GL_FEEDBACK) {
draw_set_rasterize_stage(draw, st->feedback_stage);
}
else if (ctx->RenderMode == GL_SELECT) {
draw_set_rasterize_stage(draw, st->selection_stage);
}
}