OSDN Git Service

gallium: call draw_flush() for scissor/stipple state changes
authorBrian <brian.paul@tungstengraphics.com>
Tue, 19 Feb 2008 01:36:20 +0000 (18:36 -0700)
committerBrian <brian.paul@tungstengraphics.com>
Tue, 19 Feb 2008 01:36:20 +0000 (18:36 -0700)
src/gallium/drivers/softpipe/sp_state_clip.c

index c797c0d..d8ea979 100644 (file)
@@ -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;
 }