diff options
author | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-06-08 23:52:43 -0700 |
---|---|---|
committer | Corbin Simpson <MostAwesomeDude@gmail.com> | 2009-06-26 21:25:40 -0700 |
commit | f80b7f46835f42065d2489f2e1f501187ee026b6 (patch) | |
tree | de2b8b2785bd29930b1a6c54b6df79c75d7845cf /src/gallium/drivers/r300 | |
parent | f57280cc7360d0eee40df6d34befbfad2288d297 (diff) |
r300-gallium: Ensure that no dirty state goes unemitted.
Diffstat (limited to 'src/gallium/drivers/r300')
-rw-r--r-- | src/gallium/drivers/r300/r300_emit.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index 1d297e8593..1cf6ec2262 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -597,10 +597,10 @@ validate: for (i = 0; i < r300->sampler_count; i++) { if (r300->dirty_state & (R300_NEW_SAMPLER << i)) { r300_emit_sampler(r300, r300->sampler_states[i], i); - r300->dirty_state &= ~(R300_NEW_SAMPLER << i); dirty_tex++; } } + r300->dirty_state &= ~R300_ANY_NEW_SAMPLERS; } if (r300->dirty_state & R300_NEW_SCISSOR) { @@ -612,10 +612,10 @@ validate: for (i = 0; i < r300->texture_count; i++) { if (r300->dirty_state & (R300_NEW_TEXTURE << i)) { r300_emit_texture(r300, r300->textures[i], i); - r300->dirty_state &= ~(R300_NEW_TEXTURE << i); dirty_tex++; } } + r300->dirty_state &= ~R300_ANY_NEW_TEXTURES; } if (r300->dirty_state & R300_NEW_VIEWPORT) { @@ -637,6 +637,8 @@ validate: r300->dirty_state &= ~R300_NEW_VERTEX_SHADER; } + assert(r300->dirty_state == 0); + /* Finally, emit the VBO. */ r300_emit_vertex_buffer(r300); |