diff options
Diffstat (limited to 'src/mesa/drivers/dri/unichrome/via_state.c')
-rw-r--r-- | src/mesa/drivers/dri/unichrome/via_state.c | 17 |
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. */ |