From a64d6fb7308e0ce79e0f1b8e9b7cda6403be1eb6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mikl=C3=B3s=20M=C3=A1t=C3=A9?= Date: Sat, 2 Dec 2017 23:35:21 +0100 Subject: [PATCH] mesa: fix not having secondary color in ATI_fs in swrast MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit ATI_fs in swrast only had secondary color if GL_COLOR_SUM was enabled. This patch probably fixes the same issue in r200. Piglit: spec/ati_fragment_shader/render-sources and render-precedence Signed-off-by: Miklós Máté --- src/mesa/main/state.h | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/mesa/main/state.h b/src/mesa/main/state.h index 9d4591790ae..5814c659a31 100644 --- a/src/mesa/main/state.h +++ b/src/mesa/main/state.h @@ -46,6 +46,13 @@ extern void _mesa_set_vp_override(struct gl_context *ctx, GLboolean flag); +static inline bool +_mesa_ati_fragment_shader_enabled(const struct gl_context *ctx) +{ + return ctx->ATIFragmentShader.Enabled && + ctx->ATIFragmentShader.Current->Instructions[0]; +} + /** * Is the secondary color needed? */ @@ -69,6 +76,9 @@ _mesa_need_secondary_color(const struct gl_context *ctx) (ctx->FragmentProgram._Current->info.inputs_read & VARYING_BIT_COL1)) return GL_TRUE; + if (_mesa_ati_fragment_shader_enabled(ctx)) + return GL_TRUE; + return GL_FALSE; } @@ -107,11 +117,4 @@ _mesa_arb_fragment_program_enabled(const struct gl_context *ctx) ctx->FragmentProgram.Current->arb.Instructions; } -static inline bool -_mesa_ati_fragment_shader_enabled(const struct gl_context *ctx) -{ - return ctx->ATIFragmentShader.Enabled && - ctx->ATIFragmentShader.Current->Instructions[0]; -} - #endif -- 2.30.2