X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglx%2Findirect_vertex_array.c;h=c81aae603866c8f3e7d7ba9e2a01c9a409f48787;hb=d971a4230d54069c996bca78b6ed6a6a23377821;hp=0374093b0eca90f8cc9dce4540b3b8fdb795e304;hpb=b36644bae611d608cee8ef0d5dd1200313234b73;p=mesa.git diff --git a/src/glx/indirect_vertex_array.c b/src/glx/indirect_vertex_array.c index 0374093b0ec..c81aae60386 100644 --- a/src/glx/indirect_vertex_array.c +++ b/src/glx/indirect_vertex_array.c @@ -151,6 +151,7 @@ __glXInitVertexArrayState(struct glx_context * gc) arrays = calloc(1, sizeof(struct array_state_vector)); + state->array_state = arrays; if (arrays == NULL) { __glXSetError(gc, GL_OUT_OF_MEMORY); @@ -206,6 +207,7 @@ __glXInitVertexArrayState(struct glx_context * gc) arrays->arrays = calloc(array_count, sizeof(struct array_state)); if (arrays->arrays == NULL) { + state->array_state = NULL; free(arrays); __glXSetError(gc, GL_OUT_OF_MEMORY); return; @@ -294,16 +296,12 @@ __glXInitVertexArrayState(struct glx_context * gc) * __GL_CLIENT_ATTRIB_STACK_DEPTH); if (arrays->stack == NULL) { + state->array_state = NULL; free(arrays->arrays); free(arrays); __glXSetError(gc, GL_OUT_OF_MEMORY); return; } - - /* Everything went ok so we put vertex array state in place - * in context. - */ - state->array_state = arrays; }