diff options
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r-- | src/mesa/state_tracker/st_atom_blend.c | 2 | ||||
-rw-r--r-- | src/mesa/state_tracker/st_cb_clear.c | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_atom_blend.c b/src/mesa/state_tracker/st_atom_blend.c index 0d429dac460..10e9b6a38c4 100644 --- a/src/mesa/state_tracker/st_atom_blend.c +++ b/src/mesa/state_tracker/st_atom_blend.c @@ -201,6 +201,8 @@ st_update_blend( struct st_context *st ) memset(blend, 0, sizeof(*blend)); + blend->max_rt = MAX2(1, num_cb) - 1; + if (num_cb > 1 && (blend_per_rt(st, num_cb) || colormask_per_rt(ctx, num_cb))) { num_state = num_cb; diff --git a/src/mesa/state_tracker/st_cb_clear.c b/src/mesa/state_tracker/st_cb_clear.c index 3cf4c79f083..b7d44d2c1b5 100644 --- a/src/mesa/state_tracker/st_cb_clear.c +++ b/src/mesa/state_tracker/st_cb_clear.c @@ -280,6 +280,7 @@ clear_with_quad(struct gl_context *ctx, unsigned clear_buffers) int i; blend.independent_blend_enable = num_buffers > 1; + blend.max_rt = num_buffers - 1; for (i = 0; i < num_buffers; i++) { if (!(clear_buffers & (PIPE_CLEAR_COLOR0 << i))) |