summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>2009-08-14 18:16:46 +0200
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>2009-08-14 18:16:46 +0200
commit3506d7d3e2b5ed57cb3f0653421226a863555ae1 (patch)
tree74f57e635af47b6aa5277fe65ce2817fcd8160ad /src
parent74e8b1a30b82c89c70048cfcc1f12e1ceebfd628 (diff)
nv50: make sure we don't re-emit outdated scissor state
Since we don't turn off scissors, we need to update the stateobj when the framebuffer size changes.
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/nv50/nv50_state_validate.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c
index b872684040..42ecf05580 100644
--- a/src/gallium/drivers/nv50/nv50_state_validate.c
+++ b/src/gallium/drivers/nv50/nv50_state_validate.c
@@ -124,10 +124,6 @@ nv50_state_validate_fb(struct nv50_context *nv50)
so_method(so, tesla, NV50TCL_VIEWPORT_HORIZ, 2);
so_data (so, w << 16);
so_data (so, h << 16);
- /* set window scissor rectangle to window extents */
- so_method(so, tesla, NV50TCL_SCISSOR_HORIZ, 2);
- so_data (so, w << 16);
- so_data (so, h << 16);
/* set window lower left corner */
so_method(so, tesla, NV50TCL_WINDOW_LEFT, 2);
so_data (so, 0);
@@ -137,6 +133,10 @@ nv50_state_validate_fb(struct nv50_context *nv50)
so_data (so, w << 16);
so_data (so, h << 16);
+ /* we set scissors to framebuffer size when they're 'turned off' */
+ nv50->dirty |= NV50_NEW_SCISSOR;
+ so_ref(NULL, &nv50->state.scissor);
+
so_ref(so, &nv50->state.fb);
so_ref(NULL, &so);
}