summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBrian <[email protected]>2008-03-24 18:31:01 -0600
committerBrian <[email protected]>2008-03-24 18:34:03 -0600
commite27127a61c80c8da0ffc0273688ff79b5166e163 (patch)
tree93c65a7c5b45a7aacdb4a0b676ce0613c0087296 /src
parentf654ab40d6d6a5a712fdfac54f26d1611cf67d3f (diff)
gallium: save/restore samplers in draw_textured_quad()
Diffstat (limited to 'src')
-rw-r--r--src/mesa/state_tracker/st_cb_drawpixels.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c
index 2ebaf8a2c31..0a2d37c1178 100644
--- a/src/mesa/state_tracker/st_cb_drawpixels.c
+++ b/src/mesa/state_tracker/st_cb_drawpixels.c
@@ -523,6 +523,7 @@ draw_textured_quad(GLcontext *ctx, GLint x, GLint y, GLfloat z,
cso_save_rasterizer(cso);
cso_save_viewport(cso);
+ cso_save_samplers(cso);
/* rasterizer state: just scissor */
{
@@ -596,13 +597,11 @@ draw_textured_quad(GLcontext *ctx, GLint x, GLint y, GLfloat z,
/* restore state */
cso_restore_rasterizer(cso);
cso_restore_viewport(cso);
+ cso_restore_samplers(cso);
/* shaders don't go through cso yet */
pipe->bind_fs_state(pipe, st->fp->driver_shader);
pipe->bind_vs_state(pipe, st->vp->driver_shader);
- cso_set_rasterizer(cso, &st->state.rasterizer);
- cso_set_samplers(cso, PIPE_MAX_SAMPLERS,
- (const struct pipe_sampler_state **) st->state.sampler_list);
pipe->set_sampler_textures(pipe, ctx->st->state.num_textures,
ctx->st->state.sampler_texture);
}