Mesa (master): mesa: call binding functions directly from glDeleteBuffers

Timothy Arceri tarceri at kemper.freedesktop.org
Wed Jul 26 00:23:16 UTC 2017


Module: Mesa
Branch: master
Commit: 6be1c69b97175a0ae71dda584629b91093728c12
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6be1c69b97175a0ae71dda584629b91093728c12

Author: Timothy Arceri <tarceri at itsqueeze.com>
Date:   Tue Jul 25 23:16:14 2017 +1000

mesa: call binding functions directly from glDeleteBuffers

This avoids useless error checking.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

---

 src/mesa/main/bufferobj.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index 324bbc6ea1..343e6c3ca5 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -1536,14 +1536,18 @@ _mesa_DeleteBuffers(GLsizei n, const GLuint *ids)
          }
          for (j = 0; j < MAX_FEEDBACK_BUFFERS; j++) {
             if (ctx->TransformFeedback.CurrentObject->Buffers[j] == bufObj) {
-               _mesa_BindBufferBase( GL_TRANSFORM_FEEDBACK_BUFFER, j, 0 );
+               _mesa_bind_buffer_base_transform_feedback(ctx,
+                                           ctx->TransformFeedback.CurrentObject,
+                                           j, ctx->Shared->NullBufferObj,
+                                           false);
             }
          }
 
          /* unbind UBO binding points */
          for (j = 0; j < ctx->Const.MaxUniformBufferBindings; j++) {
             if (ctx->UniformBufferBindings[j].BufferObject == bufObj) {
-               _mesa_BindBufferBase( GL_UNIFORM_BUFFER, j, 0 );
+               bind_buffer_base_uniform_buffer(ctx, j,
+                                               ctx->Shared->NullBufferObj);
             }
          }
 
@@ -1554,7 +1558,8 @@ _mesa_DeleteBuffers(GLsizei n, const GLuint *ids)
          /* unbind SSBO binding points */
          for (j = 0; j < ctx->Const.MaxShaderStorageBufferBindings; j++) {
             if (ctx->ShaderStorageBufferBindings[j].BufferObject == bufObj) {
-               _mesa_BindBufferBase(GL_SHADER_STORAGE_BUFFER, j, 0);
+               bind_buffer_base_shader_storage_buffer(ctx, j,
+                                                    ctx->Shared->NullBufferObj);
             }
          }
 
@@ -1566,6 +1571,7 @@ _mesa_DeleteBuffers(GLsizei n, const GLuint *ids)
          for (j = 0; j < ctx->Const.MaxAtomicBufferBindings; j++) {
             if (ctx->AtomicBufferBindings[j].BufferObject == bufObj) {
                _mesa_BindBufferBase( GL_ATOMIC_COUNTER_BUFFER, j, 0 );
+               bind_atomic_buffer(ctx, j, ctx->Shared->NullBufferObj, 0, 0);
             }
          }
 




More information about the mesa-commit mailing list