From: Brian Paul Date: Thu, 7 Jan 2010 16:43:08 +0000 (-0700) Subject: swrast: fix color masking for glAccum(GL_RETURN) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b841c2756e6d697d5b2884317c0daa3f176195a6;p=mesa.git swrast: fix color masking for glAccum(GL_RETURN) Should fix fdo bug 25837. --- diff --git a/src/mesa/swrast/s_accum.c b/src/mesa/swrast/s_accum.c index 2d8c361e5d7..0e0876efcba 100644 --- a/src/mesa/swrast/s_accum.c +++ b/src/mesa/swrast/s_accum.c @@ -436,10 +436,6 @@ accum_return(GLcontext *ctx, GLfloat value, struct gl_renderbuffer *accumRb = fb->Attachment[BUFFER_ACCUM].Renderbuffer; const GLboolean directAccess = (accumRb->GetPointer(ctx, accumRb, 0, 0) != NULL); - const GLboolean masking = (!ctx->Color.ColorMask[RCOMP] || - !ctx->Color.ColorMask[GCOMP] || - !ctx->Color.ColorMask[BCOMP] || - !ctx->Color.ColorMask[ACOMP]); static GLchan multTable[32768]; static GLfloat prevMult = 0.0; @@ -527,6 +523,10 @@ accum_return(GLcontext *ctx, GLfloat value, /* store colors */ for (buffer = 0; buffer < fb->_NumColorDrawBuffers; buffer++) { struct gl_renderbuffer *rb = fb->_ColorDrawBuffers[buffer]; + const GLboolean masking = (!ctx->Color.ColorMask[buffer][RCOMP] || + !ctx->Color.ColorMask[buffer][GCOMP] || + !ctx->Color.ColorMask[buffer][BCOMP] || + !ctx->Color.ColorMask[buffer][ACOMP]); if (masking) { _swrast_mask_rgba_span(ctx, rb, &span, buffer); }