From: Brian Paul Date: Mon, 29 May 2006 14:37:56 +0000 (+0000) Subject: generic attribute 0 wasn't handled correctly (Jesse Allen) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=919f6a070c871a8e60053306145f0971c69d699b;p=mesa.git generic attribute 0 wasn't handled correctly (Jesse Allen) --- diff --git a/src/mesa/shader/arbprogparse.c b/src/mesa/shader/arbprogparse.c index b596b79bc79..cdf1b3dc1d2 100644 --- a/src/mesa/shader/arbprogparse.c +++ b/src/mesa/shader/arbprogparse.c @@ -1538,12 +1538,20 @@ parse_attrib_binding(GLcontext * ctx, GLubyte ** inst, GLuint attrib; if (!parse_generic_attrib_num(ctx, inst, Program, &attrib)) { *is_generic = 1; + if (attrib >= MAX_VERTEX_PROGRAM_ATTRIBS) { + const char *msg = "Invalid generic vertex attribute reference"; + _mesa_set_program_error (ctx, Program->Position, msg); + _mesa_error (ctx, GL_INVALID_OPERATION, msg); + return 1; + } /* Add VERT_ATTRIB_GENERIC0 here because ARB_vertex_program's * attributes do not alias the conventional vertex * attributes. */ if (attrib > 0) *inputReg = attrib + VERT_ATTRIB_GENERIC0; + else + *inputReg = 0; } } break;