summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nv40/nv40_state_scissor.c
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2008-03-31 06:35:43 +1000
committerBen Skeggs <skeggsb@gmail.com>2008-03-31 06:39:03 +1000
commit6806519a0b2a8af0c950f71705b02e13876d460f (patch)
treeab384ac5e2d4710fbfeb963b5ab52a544167ceb8 /src/gallium/drivers/nv40/nv40_state_scissor.c
parent7b389f8d2f307fa0714494f2a43e9141cc04ed3e (diff)
nv40: track current scissor enable/disable state
Not sure how this was forgotten :) Anyhow, fixes gearbox/bzflag/xmoto, probably other things that use scissored clears / hit the nasty clear-with-quad path.
Diffstat (limited to 'src/gallium/drivers/nv40/nv40_state_scissor.c')
-rw-r--r--src/gallium/drivers/nv40/nv40_state_scissor.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/nv40/nv40_state_scissor.c b/src/gallium/drivers/nv40/nv40_state_scissor.c
index 9e9eadc511..285239ef41 100644
--- a/src/gallium/drivers/nv40/nv40_state_scissor.c
+++ b/src/gallium/drivers/nv40/nv40_state_scissor.c
@@ -10,10 +10,11 @@ nv40_state_scissor_validate(struct nv40_context *nv40)
if (nv40->state.hw[NV40_STATE_SCISSOR] &&
(rast->scissor == 0 && nv40->state.scissor_enabled == 0))
return FALSE;
+ nv40->state.scissor_enabled = rast->scissor;
so = so_new(3, 0);
so_method(so, nv40->screen->curie, NV40TCL_SCISSOR_HORIZ, 2);
- if (rast->scissor) {
+ if (nv40->state.scissor_enabled) {
so_data (so, ((s->maxx - s->minx) << 16) | s->minx);
so_data (so, ((s->maxy - s->miny) << 16) | s->miny);
} else {