Keith Whitwell wrote:
> 
> Looking at the tdfx driver I see this:
> 
>    /* FIXME: Combine this into one call...
>     */
>    FALLBACK( tmesa, TDFX_FALLBACK_BLEND_EQ, mode != GL_FUNC_ADD_EXT );
>    FALLBACK( tmesa, TDFX_FALLBACK_BLEND_EQ,
>              ctx->Color.ColorLogicOpEnabled && ctx->Color.LogicOp != GL_COPY );
> 
> This is broken because the two conditions attempt to use a single bit.
> Imagine the case where (mode == GL_FUNC_ADD_EXT) but (ctx->Color.ColorLogicOp
> == GL_COPY):  The first call will install a fallback, but the second will
> immediately clear the fallback...
> 
> The solution is to associate a single logical condition for each bit in the
> fallback mask.  In this case you could combine the two conditions with a
> disjunctive, or alternatively use different bits in the mask for the two
> conditions.

That's me hacking away and being lazy (hence the comment).

-- Gareth

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to