From: Brian Paul Date: Wed, 14 Oct 2015 15:35:53 +0000 (-0600) Subject: mesa: move validate_blend_factors() call after no-change check X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1d751655012c7b8aafbeb90d02e5314a8eedc890;p=mesa.git mesa: move validate_blend_factors() call after no-change check A redundant call to glBlendFuncSeparateiARB() is more likely than getting invalid values, so do the no-op check first. Reviewed-by: Eric Anholt --- diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index 14742d0bb6a..d225f3d171c 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -296,18 +296,18 @@ _mesa_BlendFuncSeparateiARB(GLuint buf, GLenum sfactorRGB, GLenum dfactorRGB, return; } - if (!validate_blend_factors(ctx, "glBlendFuncSeparatei", - sfactorRGB, dfactorRGB, - sfactorA, dfactorA)) { - return; - } - if (ctx->Color.Blend[buf].SrcRGB == sfactorRGB && ctx->Color.Blend[buf].DstRGB == dfactorRGB && ctx->Color.Blend[buf].SrcA == sfactorA && ctx->Color.Blend[buf].DstA == dfactorA) return; /* no change */ + if (!validate_blend_factors(ctx, "glBlendFuncSeparatei", + sfactorRGB, dfactorRGB, + sfactorA, dfactorA)) { + return; + } + FLUSH_VERTICES(ctx, _NEW_COLOR); ctx->Color.Blend[buf].SrcRGB = sfactorRGB;