From 37e86254c12c7d7ab844ad772360b7c6bb25b209 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Thu, 19 Jan 2006 18:00:38 +0000 Subject: Avoid a crash when the user has enabled glVertex{,Attrib}Pointer but hasn't filled in a valid pointer for that attribute or vertex array. --- src/mesa/main/api_arrayelt.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c index 84df98dc89..e22f4bb75d 100644 --- a/src/mesa/main/api_arrayelt.c +++ b/src/mesa/main/api_arrayelt.c @@ -699,7 +699,7 @@ static void _ae_update_state( GLcontext *ctx ) aa++; } for (i = 0; i < ctx->Const.MaxTextureCoordUnits; i++) { - if (ctx->Array.TexCoord[i].Enabled) { + if (ctx->Array.TexCoord[i].Enabled && ctx->Array.TexCoord[i].Ptr) { /* NOTE: we use generic glVertexAttrib functions here. * If we ever de-alias conventional/generic vertex attribs this * will have to change. @@ -714,7 +714,8 @@ static void _ae_update_state( GLcontext *ctx ) /* generic vertex attribute arrays */ for (i = 1; i < VERT_ATTRIB_MAX; i++) { /* skip zero! */ - if (ctx->Array.VertexAttrib[i].Enabled) { + if (ctx->Array.VertexAttrib[i].Enabled && + ctx->Array.VertexAttrib[i].Ptr) { struct gl_client_array *attribArray = &ctx->Array.VertexAttrib[i]; at->array = attribArray; /* Note: we can't grab the _glapi_Dispatch->VertexAttrib1fvNV -- cgit v1.2.3