summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/softpipe
diff options
context:
space:
mode:
authorBrian <[email protected]>2008-02-18 18:36:20 -0700
committerBrian <[email protected]>2008-02-18 18:36:20 -0700
commitae9931dad24703d99530b2761c759cef1cbc0fb5 (patch)
tree374b79b5f1802ae07c4907f8c130a1b4ba9eb95a /src/gallium/drivers/softpipe
parent478c14453b33b20724bcdb70cf1f54f4addb71ab (diff)
gallium: call draw_flush() for scissor/stipple state changes
Diffstat (limited to 'src/gallium/drivers/softpipe')
-rw-r--r--src/gallium/drivers/softpipe/sp_state_clip.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/softpipe/sp_state_clip.c b/src/gallium/drivers/softpipe/sp_state_clip.c
index c797c0dd3b1..d8ea9799577 100644
--- a/src/gallium/drivers/softpipe/sp_state_clip.c
+++ b/src/gallium/drivers/softpipe/sp_state_clip.c
@@ -68,6 +68,8 @@ void softpipe_set_scissor_state( struct pipe_context *pipe,
{
struct softpipe_context *softpipe = softpipe_context(pipe);
+ draw_flush(softpipe->draw);
+
memcpy( &softpipe->scissor, scissor, sizeof(*scissor) );
softpipe->dirty |= SP_NEW_SCISSOR;
}
@@ -78,6 +80,8 @@ void softpipe_set_polygon_stipple( struct pipe_context *pipe,
{
struct softpipe_context *softpipe = softpipe_context(pipe);
+ draw_flush(softpipe->draw);
+
memcpy( &softpipe->poly_stipple, stipple, sizeof(*stipple) );
softpipe->dirty |= SP_NEW_STIPPLE;
}