return;
}
+ if (ctx->TransformFeedback.RasterDiscard)
+ return;
+
if (ctx->RenderMode == GL_RENDER) {
ctx->Driver.Accum(ctx, op, value);
}
ctx->DrawBuffer->_Ymin >= ctx->DrawBuffer->_Ymax)
return;
+ if (ctx->TransformFeedback.RasterDiscard)
+ return;
+
if (ctx->RenderMode == GL_RENDER) {
GLbitfield bufferMask;
drawbuffer);
return;
}
- else {
+ else if (!ctx->TransformFeedback.RasterDiscard) {
/* Save current stencil clear value, set to 'value', do the
* stencil clear and restore the clear value.
* XXX in the future we may have a new ctx->Driver.ClearBuffer()
drawbuffer);
return;
}
- else if (mask) {
+ else if (mask && !ctx->TransformFeedback.RasterDiscard) {
union gl_color_union clearSave;
/* save color */
drawbuffer);
return;
}
- else if (mask) {
+ else if (mask && !ctx->TransformFeedback.RasterDiscard) {
union gl_color_union clearSave;
/* save color */
drawbuffer);
return;
}
- else {
+ else if (!ctx->TransformFeedback.RasterDiscard) {
/* Save current depth clear value, set to 'value', do the
* depth clear and restore the clear value.
* XXX in the future we may have a new ctx->Driver.ClearBuffer()
drawbuffer);
return;
}
- else if (mask) {
+ else if (mask && !ctx->TransformFeedback.RasterDiscard) {
union gl_color_union clearSave;
/* save color */
return;
}
+ if (ctx->TransformFeedback.RasterDiscard)
+ return;
+
if (ctx->NewState) {
_mesa_update_state( ctx );
}
goto end; /* the error code was recorded */
}
+ if (ctx->TransformFeedback.RasterDiscard) {
+ goto end;
+ }
+
if (!ctx->Current.RasterPosValid) {
goto end; /* no-op, not an error */
}
goto end;
}
+ if (ctx->TransformFeedback.RasterDiscard) {
+ goto end;
+ }
+
if (!ctx->Current.RasterPosValid || width == 0 || height == 0) {
goto end; /* no-op, not an error */
}
return;
}
+ if (ctx->TransformFeedback.RasterDiscard)
+ return;
+
if (ctx->RenderMode == GL_RENDER) {
/* Truncate, to satisfy conformance tests (matches SGI's OpenGL). */
if (width > 0 && height > 0) {