summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_atom_blend.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/state_tracker/st_atom_blend.c')
-rw-r--r--src/mesa/state_tracker/st_atom_blend.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_atom_blend.c b/src/mesa/state_tracker/st_atom_blend.c
index 804de2f154f..9f7f779289e 100644
--- a/src/mesa/state_tracker/st_atom_blend.c
+++ b/src/mesa/state_tracker/st_atom_blend.c
@@ -139,6 +139,12 @@ blend_per_rt(const struct gl_context *ctx, unsigned num_cb)
/* this can only happen if GL_ARB_draw_buffers_blend is enabled */
return GL_TRUE;
}
+ if (ctx->DrawBuffer->_IntegerBuffers &&
+ (ctx->DrawBuffer->_IntegerBuffers != cb_mask)) {
+ /* If there is a mix of integer/non-integer buffers then blending
+ * must be handled on a per buffer basis. */
+ return GL_TRUE;
+ }
return GL_FALSE;
}