From: Brian Paul Date: Fri, 27 Feb 2009 20:04:38 +0000 (-0700) Subject: mesa: if a buffer object is mapped when glDeleteBuffers() is called, unmap it X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a7f434b486187129ae8d5507170c42a9ce750258;p=mesa.git mesa: if a buffer object is mapped when glDeleteBuffers() is called, unmap it --- diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index 1f41565fe2e..8df0a5b1a1e 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -793,6 +793,11 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids) ASSERT(bufObj->Name == ids[i]); + if (bufObj->Pointer) { + /* if mapped, unmap it now */ + ctx->Driver.UnmapBuffer(ctx, 0, bufObj); + } + /* unbind any vertex pointers bound to this buffer */ unbind(ctx, &ctx->Array.ArrayObj->Vertex.BufferObj, bufObj); unbind(ctx, &ctx->Array.ArrayObj->Normal.BufferObj, bufObj);