diff options
author | Brian Paul <brian.paul@tungstengraphics.com> | 2006-10-18 20:02:42 +0000 |
---|---|---|
committer | Brian Paul <brian.paul@tungstengraphics.com> | 2006-10-18 20:02:42 +0000 |
commit | 446972bc2756cf9770a82f51aa0dc4f529c6cae5 (patch) | |
tree | dde17acb61b36206619a1cb617f3cb29df1c1107 /src/mesa/drivers/dri/s3v | |
parent | ccb64bbb2a32761efa076ebafa7ccdaf2d412b0e (diff) |
Want to stop passing x/y/width/height to Clear() function.
The coordinates need to be computed after we've got the hw lock.
Code updated to:
1. Ignore all/x/y/width/height/ params passed to Clear func.
2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
Diffstat (limited to 'src/mesa/drivers/dri/s3v')
-rw-r--r-- | src/mesa/drivers/dri/s3v/s3v_state.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/s3v/s3v_state.c b/src/mesa/drivers/dri/s3v/s3v_state.c index e692f20e8a..4f412edf09 100644 --- a/src/mesa/drivers/dri/s3v/s3v_state.c +++ b/src/mesa/drivers/dri/s3v/s3v_state.c @@ -73,11 +73,17 @@ static void s3vDDBlendFunc( GLcontext *ctx, GLenum sfactor, GLenum dfactor ) * Buffer clear */ -static void s3vDDClear( GLcontext *ctx, GLbitfield mask, GLboolean all, - GLint cx, GLint cy, GLint cw, GLint ch ) +static void s3vDDClear( GLcontext *ctx, GLbitfield mask, GLboolean allFoo, + GLint cxFoo, GLint cyFoo, GLint cwFoo, GLint chFoo ) { s3vContextPtr vmesa = S3V_CONTEXT(ctx); unsigned int _stride; + GLint cx = ctx->DrawBuffer->_Xmin; + GLint cy = ctx->DrawBuffer->_Ymin; + GLint cw = ctx->DrawBuffer->_Xmax - cx; + GLint ch = ctx->DrawBuffer->_Ymax - cy; + + /* XXX FIX ME: the cx,cy,cw,ch vars are currently ignored! */ vmesa->restore_primitive = -1; @@ -120,7 +126,7 @@ static void s3vDDClear( GLcontext *ctx, GLbitfield mask, GLboolean all, if (mask & BUFFER_BIT_DEPTH) { /* depth */ DEBUG(("BUFFER_BIT_DEPTH\n")); - _stride = ((cw+31)&~31) * 2; + _stride = ((cw+31)&~31) * 2; /* XXX cw or Buffer->Width??? */ DMAOUT_CHECK(BITBLT_SRC_BASE, 15); DMAOUT(0); @@ -157,7 +163,7 @@ static void s3vDDClear( GLcontext *ctx, GLbitfield mask, GLboolean all, if ( mask ) DEBUG(("still masked ;3(\n")); */ /* yes */ #else - _swrast_Clear( ctx, mask, all, cx, cy, cw, ch ); + _swrast_Clear( ctx, mask, 0, 0, 0, 0, 0 ); #endif } |