summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/unichrome/via_state.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/unichrome/via_state.c')
-rw-r--r--src/mesa/drivers/dri/unichrome/via_state.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/unichrome/via_state.c b/src/mesa/drivers/dri/unichrome/via_state.c
index fe1007bb1a..dc22d2cecc 100644
--- a/src/mesa/drivers/dri/unichrome/via_state.c
+++ b/src/mesa/drivers/dri/unichrome/via_state.c
@@ -615,7 +615,8 @@ static void viaScissor(GLcontext *ctx, GLint x, GLint y,
if (!vmesa->driDrawable)
return;
- if (VIA_DEBUG) fprintf(stderr, "%s in\n", __FUNCTION__);
+ if (VIA_DEBUG)
+ fprintf(stderr, "%s %d,%d %dx%d, drawH %d\n", __FUNCTION__, x,y,w,h, vmesa->driDrawable->h);
if (ctx->Scissor.Enabled) {
VIA_FLUSH_DMA(vmesa); /* don't pipeline cliprect changes */
@@ -628,6 +629,19 @@ static void viaScissor(GLcontext *ctx, GLint x, GLint y,
if (VIA_DEBUG) fprintf(stderr, "%s out\n", __FUNCTION__);
}
+static void viaEnable(GLcontext *ctx, GLenum cap, GLboolean state)
+{
+ viaContextPtr vmesa = VIA_CONTEXT(ctx);
+
+ switch (cap) {
+ case GL_SCISSOR_TEST:
+ VIA_FLUSH_DMA(vmesa);
+ break;
+ default:
+ break;
+ }
+}
+
/* Fallback to swrast for select and feedback.
@@ -1612,6 +1626,7 @@ void viaInitStateFuncs(GLcontext *ctx)
ctx->Driver.Scissor = viaScissor;
ctx->Driver.DepthRange = viaDepthRange;
ctx->Driver.Viewport = viaViewport;
+ ctx->Driver.Enable = viaEnable;
/* Pixel path fallbacks.
*/