More fixes, glean seems to run now.
diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c
index f0164a8..b3c33f2 100644
--- a/src/mesa/main/api_arrayelt.c
+++ b/src/mesa/main/api_arrayelt.c
@@ -1051,7 +1051,7 @@
    FogCoordFuncs[6] = _gloffset_FogCoordfvEXT;
    FogCoordFuncs[7] = _gloffset_FogCoorddvEXT;
 
-   ctx->aelt_context = MALLOC( sizeof(AEcontext) );
+   ctx->aelt_context = CALLOC( sizeof(AEcontext) );
    if (!ctx->aelt_context)
       return GL_FALSE;
 
@@ -1220,7 +1220,8 @@
 			    GL_DYNAMIC_DRAW_ARB,
 			    actx->vbo[i]);
 
-   actx->mapped_vbos = GL_TRUE;
+   if (actx->nr_vbos)
+      actx->mapped_vbos = GL_TRUE;
 }
 
 void _ae_unmap_vbos( GLcontext *ctx )