diff options
author | Zack Rusin <[email protected]> | 2007-09-19 12:35:29 -0400 |
---|---|---|
committer | Zack Rusin <[email protected]> | 2007-09-19 13:12:09 -0400 |
commit | c0bf7322088715bb411068c3d631b0c4be8cdff5 (patch) | |
tree | acc04e8f411800c3dbdc6672585d38894dd11b5d /src/mesa/state_tracker/st_atom_blend.c | |
parent | b3cc74aa448f42340cbd01578a51f94eb2949618 (diff) |
Redo the cso cache to map driver data in a lot more pleasing way.
Drivers can now create whatever they want from the state template. We
use cso_state object to store the template (necessary during lookups),
and the driver data. Convert blend state to the new semantics.
Diffstat (limited to 'src/mesa/state_tracker/st_atom_blend.c')
-rw-r--r-- | src/mesa/state_tracker/st_atom_blend.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mesa/state_tracker/st_atom_blend.c b/src/mesa/state_tracker/st_atom_blend.c index d94beb66c78..d5eadc3541a 100644 --- a/src/mesa/state_tracker/st_atom_blend.c +++ b/src/mesa/state_tracker/st_atom_blend.c @@ -211,14 +211,14 @@ update_blend( struct st_context *st ) if (st->ctx->Color.DitherFlag) blend.dither = 1; - struct pipe_blend_state *real_blend = + const struct cso_blend *cso = st_cached_blend_state(st, &blend); - if (st->state.blend != real_blend) { + if (st->state.blend != cso) { /* state has changed */ - st->state.blend = real_blend; + st->state.blend = cso; /* bind new state */ - st->pipe->bind_blend_state(st->pipe, real_blend); + st->pipe->bind_blend_state(st->pipe, cso->data); } if (memcmp(st->ctx->Color.BlendColor, &st->state.blend_color, 4 * sizeof(GLfloat)) != 0) { |