mesa: Fix the error check for VertexAttrib*.

It was checking "mesa's theoretical max attributes" rather than "the
driver's max attributes."

Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17449>
This commit is contained in:
Emma Anholt 2022-07-10 08:02:51 -07:00 committed by Marge Bot
parent 0feedec9e6
commit 0f37e3c339
2 changed files with 1 additions and 6 deletions

View File

@ -25,11 +25,6 @@ dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgba,Fail
# A glTexImage, glDraw, glTexSubImage, glDraw sequence into a texture is missing what looks like the first drawing.
dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgba,Fail
# "GL_INVALID_VALUE is generated if index is greater than or equal to GL_MAX_VERTEX_ATTRIBS."
# but we didn't generate an error.
dEQP-GLES2.functional.negative_api.vertex_array.vertex_attrib,Fail
dEQP-GLES2.functional.negative_api.vertex_array.vertex_attribv,Fail
# Sampling grid slightly off in test 2?
dEQP-GLES2.functional.texture.filtering.2d.nearest_mipmap_linear_linear_mirror_rgba8888,Fail
dEQP-GLES2.functional.texture.filtering.2d.nearest_mipmap_linear_linear_repeat_rgba8888,Fail

View File

@ -1006,7 +1006,7 @@ static void
VertexAttrib4f_nopos(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
{
GET_CURRENT_CONTEXT(ctx);
if (index < MAX_VERTEX_GENERIC_ATTRIBS)
if (index < ctx->Const.Program[MESA_SHADER_VERTEX].MaxAttribs)
ATTRF(VBO_ATTRIB_GENERIC0 + index, 4, x, y, z, w);
else
ERROR(GL_INVALID_VALUE);