summaryrefslogtreecommitdiff
path: root/src/mesa/main/bufferobj.c
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2010-11-11 15:31:28 -0700
committerBrian Paul <brianp@vmware.com>2010-11-11 15:31:36 -0700
commit78587ea0122d34e13c078d095aa5b730ce24bb73 (patch)
tree451c5d941809e485695ec54ac0ac52f0f17c6514 /src/mesa/main/bufferobj.c
parentc552f273f559968dfd770367e25329baccbcd0c4 (diff)
mesa: fix glDeleteBuffers() regression
This fixes a regression (failed assertion) from commit c552f273f559968dfd770367e25329baccbcd0c4 which was hit if glDeleteBuffers() was called on a buffer that was never bound. NOTE: this is a candidate for the 7.9 branch.
Diffstat (limited to 'src/mesa/main/bufferobj.c')
-rw-r--r--src/mesa/main/bufferobj.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index df44fbe46c..4d62f54a95 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -998,7 +998,7 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids)
struct gl_array_object *arrayObj = ctx->Array.ArrayObj;
GLuint j;
- ASSERT(bufObj->Name == ids[i]);
+ ASSERT(bufObj->Name == ids[i] || bufObj == &DummyBufferObject);
if (_mesa_bufferobj_mapped(bufObj)) {
/* if mapped, unmap it now */
@@ -1039,7 +1039,7 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids)
}
/* The ID is immediately freed for re-use */
- _mesa_HashRemove(ctx->Shared->BufferObjects, bufObj->Name);
+ _mesa_HashRemove(ctx->Shared->BufferObjects, ids[i]);
_mesa_reference_buffer_object(ctx, &bufObj, NULL);
}
}