[Mesa-dev] [Mesa-stable] [PATCH v2] mesa: fix GL_COLOR_SUM enum for drivers without ARB_vertex_program

Ilia Mirkin imirkin at alum.mit.edu
Thu Jan 16 10:38:47 PST 2014


On Thu, Jan 16, 2014 at 1:34 PM, Ian Romanick <idr at freedesktop.org> wrote:
> On 01/16/2014 10:13 AM, Ilia Mirkin wrote:
>> Commit c13970808 (mesa: GL_EXT_secondary_color is not optional) changed
>>
>> CHECK_EXTENSION2(EXT_secondary_color, ARB_vetex_program, cap)
>>
>> to
>>
>> CHECK_EXTENSION(ARB_vertex_program, cap)
>>
>> However CHECK_EXTENSION2 checks that either extension is available, not
>> both. Remove the extension check entirely since the intent was for it to
>> always be enabled.
>>
>> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
>> Cc: 9.2 10.0 <mesa-stable at lists.freedesktop.org>
>
> Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

Thanks! Can you take care of checking it in? I don't have an fd.o account.

>
>> ---
>>
>> I hope this is what you meant by the get_hash_params.py change. I'm not
>> entirely clear on when one should use NO_EXTRA vs a flush of some sort.
>
> The various flushes are only needed for queries of derived state (like
> the current secondary color query).
>
>>  src/mesa/main/enable.c           | 2 --
>>  src/mesa/main/get_hash_params.py | 2 +-
>>  2 files changed, 1 insertion(+), 3 deletions(-)
>>
>> diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
>> index bb4a23c..fca3068 100644
>> --- a/src/mesa/main/enable.c
>> +++ b/src/mesa/main/enable.c
>> @@ -762,7 +762,6 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
>>        case GL_COLOR_SUM_EXT:
>>           if (ctx->API != API_OPENGL_COMPAT)
>>              goto invalid_enum_error;
>> -         CHECK_EXTENSION(ARB_vertex_program, cap);
>>           if (ctx->Fog.ColorSumEnabled == state)
>>              return;
>>           FLUSH_VERTICES(ctx, _NEW_FOG);
>> @@ -1443,7 +1442,6 @@ _mesa_IsEnabled( GLenum cap )
>>        case GL_COLOR_SUM_EXT:
>>           if (ctx->API != API_OPENGL_COMPAT)
>>              goto invalid_enum_error;
>> -         CHECK_EXTENSION(ARB_vertex_program);
>>           return ctx->Fog.ColorSumEnabled;
>>
>>        /* GL_ARB_multisample */
>> diff --git a/src/mesa/main/get_hash_params.py b/src/mesa/main/get_hash_params.py
>> index 6195d63..bc2bbaf 100644
>> --- a/src/mesa/main/get_hash_params.py
>> +++ b/src/mesa/main/get_hash_params.py
>> @@ -541,7 +541,7 @@ descriptor=[
>>    [ "TRANSPOSE_TEXTURE_MATRIX_ARB", "CONTEXT_MATRIX_T(TextureMatrixStack), NO_EXTRA" ],
>>
>>  # GL_EXT_secondary_color
>> -  [ "COLOR_SUM", "CONTEXT_BOOL(Fog.ColorSumEnabled), extra_ARB_vertex_program" ],
>> +  [ "COLOR_SUM", "CONTEXT_BOOL(Fog.ColorSumEnabled), NO_EXTRA" ],
>>    [ "CURRENT_SECONDARY_COLOR", "CONTEXT_FIELD(Current.Attrib[VERT_ATTRIB_COLOR1][0], TYPE_FLOATN_4), extra_flush_current" ],
>>    [ "SECONDARY_COLOR_ARRAY", "ARRAY_BOOL(VertexAttrib[VERT_ATTRIB_COLOR1].Enabled), NO_EXTRA" ],
>>    [ "SECONDARY_COLOR_ARRAY_TYPE", "ARRAY_ENUM(VertexAttrib[VERT_ATTRIB_COLOR1].Type), NO_EXTRA" ],
>>
>


More information about the mesa-dev mailing list