case GL_POINT_SIZE_ARRAY_OES:
if (ctx->VertexProgram.PointSizeEnabled != state) {
- FLUSH_VERTICES(ctx, _NEW_PROGRAM, 0);
+ FLUSH_VERTICES(ctx, ctx->st->lower_point_size ? _NEW_PROGRAM : 0,
+ 0);
+ ctx->NewDriverState |= ST_NEW_RASTERIZER;
ctx->VertexProgram.PointSizeEnabled = state;
}
vao_state(ctx, vao, VERT_ATTRIB_POINT_SIZE, state);
goto invalid_enum_error;
if (ctx->VertexProgram.PointSizeEnabled == state)
return;
- FLUSH_VERTICES(ctx, _NEW_PROGRAM, GL_ENABLE_BIT);
+ FLUSH_VERTICES(ctx, ctx->st->lower_point_size ? _NEW_PROGRAM : 0,
+ GL_ENABLE_BIT);
+ ctx->NewDriverState |= ST_NEW_RASTERIZER;
ctx->VertexProgram.PointSizeEnabled = state;
break;
case GL_VERTEX_PROGRAM_TWO_SIDE_ARB: