Mesa (master): freedreno: scissor fix
Rob Clark
robclark at kemper.freedesktop.org
Thu May 23 18:35:32 UTC 2013
Module: Mesa
Branch: master
Commit: 95670bdee2f51196c1f34871a23faae1348d4b60
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=95670bdee2f51196c1f34871a23faae1348d4b60
Author: Rob Clark <robclark at freedesktop.org>
Date: Tue May 14 20:05:55 2013 -0400
freedreno: scissor fix
Don't assume the state-tracker will set the scissor after the
framebuffer state is changed.
Signed-off-by: Rob Clark <robclark at freedesktop.org>
---
src/gallium/drivers/freedreno/freedreno_state.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/src/gallium/drivers/freedreno/freedreno_state.c b/src/gallium/drivers/freedreno/freedreno_state.c
index dcac624..ce9a522 100644
--- a/src/gallium/drivers/freedreno/freedreno_state.c
+++ b/src/gallium/drivers/freedreno/freedreno_state.c
@@ -135,6 +135,17 @@ fd_set_framebuffer_state(struct pipe_context *pctx,
pipe_surface_reference(&cso->zsbuf, framebuffer->zsbuf);
ctx->dirty |= FD_DIRTY_FRAMEBUFFER;
+
+ /* also need to reset the scissor.. mesa/gl state tracker
+ * does this for us, but u_blitter doesn't and other
+ * state trackers might not..
+ */
+ ctx->scissor.minx = 0;
+ ctx->scissor.miny = 0;
+ ctx->scissor.maxx = cso->width;
+ ctx->scissor.maxy = cso->height;
+
+ ctx->dirty |= FD_DIRTY_SCISSOR;
}
static void
More information about the mesa-commit
mailing list