mesa: free object labels when deleting
authorTimothy Arceri <t_arceri@yahoo.com.au>
Mon, 26 Aug 2013 07:16:08 +0000 (17:16 +1000)
committerBrian Paul <brianp@vmware.com>
Wed, 4 Sep 2013 13:47:48 +0000 (07:47 -0600)
Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
Reviewed-by: Brian Paul <brianp@vmware.com>
13 files changed:
src/mesa/main/arrayobj.c
src/mesa/main/bufferobj.c
src/mesa/main/dlist.c
src/mesa/main/framebuffer.c
src/mesa/main/queryobj.c
src/mesa/main/renderbuffer.c
src/mesa/main/samplerobj.c
src/mesa/main/shaderobj.c
src/mesa/main/syncobj.c
src/mesa/main/texobj.c
src/mesa/main/transformfeedback.c
src/mesa/state_tracker/st_cb_bufferobjects.c
src/mesa/state_tracker/st_cb_syncobj.c

index 006a2eaa051d14e22acc7378c072ff479da06b38..5d50d29f8f6ca64420ed35ed8cc87ece44835595 100644 (file)
@@ -115,6 +115,7 @@ _mesa_delete_array_object( struct gl_context *ctx, struct gl_array_object *obj )
    unbind_array_object_vbos(ctx, obj);
    _mesa_reference_buffer_object(ctx, &obj->ElementArrayBufferObj, NULL);
    _glthread_DESTROY_MUTEX(obj->Mutex);
+   free(obj->Label);
    free(obj);
 }
 
index bd71688e826865ade1ebb2a31e65744696540af1..b22340ff3fd521fba00ee3756032ef2b963b6347 100644 (file)
@@ -265,6 +265,7 @@ _mesa_delete_buffer_object(struct gl_context *ctx,
    bufObj->Name = ~0;
 
    _glthread_DESTROY_MUTEX(bufObj->Mutex);
+   free(bufObj->Label);
    free(bufObj);
 }
 
index a82436c3565f983e3caaf69a889e3d20ba22d549..595641915e77c9ccb14ce905c770f4f1ca1ff74b 100644 (file)
@@ -769,6 +769,7 @@ _mesa_delete_list(struct gl_context *ctx, struct gl_display_list *dlist)
       }
    }
 
+   free(dlist->Label);
    free(dlist);
 }
 
index 4ec4118c5b777cf2e54e10d66b4bf18cca9ff5cc..2fad45880668f047afbdcad8c19bcebdf8a20255 100644 (file)
@@ -195,6 +195,7 @@ _mesa_destroy_framebuffer(struct gl_framebuffer *fb)
 {
    if (fb) {
       _mesa_free_framebuffer_data(fb);
+      free(fb->Label);
       free(fb);
    }
 }
index 60356b85d356c2fe04d11c479254753bf11c7b39..6b636f4cb3b04f3daac4c969d6b042abec700f09 100644 (file)
@@ -126,6 +126,7 @@ _mesa_check_query(struct gl_context *ctx, struct gl_query_object *q)
 static void
 _mesa_delete_query(struct gl_context *ctx, struct gl_query_object *q)
 {
+   free(q->Label);
    free(q);
 }
 
index d2bde803f1ac5c015faec9e9b802b8b6633ef8de..2ff96e548ebcd595dce9db13db6acfe6c4759a13 100644 (file)
@@ -84,6 +84,7 @@ void
 _mesa_delete_renderbuffer(struct gl_context *ctx, struct gl_renderbuffer *rb)
 {
    _glthread_DESTROY_MUTEX(rb->Mutex);
+   free(rb->Label);
    free(rb);
 }
 
index 3857eda06515209691457fb90e26a63bfa14afa0..39cfcd086cfbaac3e8e4db03e5eac70dc87782fb 100644 (file)
@@ -155,6 +155,7 @@ static void
 _mesa_delete_sampler_object(struct gl_context *ctx,
                             struct gl_sampler_object *sampObj)
 {
+   free(sampObj->Label);
    free(sampObj);
 }
 
index a62ad0413cfea48cea537a2d1a73d6686de6bfbc..0d794ad96939d11fb3a9a0b32aed00d76462809d 100644 (file)
@@ -125,6 +125,7 @@ static void
 _mesa_delete_shader(struct gl_context *ctx, struct gl_shader *sh)
 {
    free((void *)sh->Source);
+   free(sh->Label);
    _mesa_reference_program(ctx, &sh->Program, NULL);
    ralloc_free(sh);
 }
@@ -351,6 +352,8 @@ _mesa_free_shader_program_data(struct gl_context *ctx,
         shProg->_LinkedShaders[sh] = NULL;
       }
    }
+
+   free(shProg->Label);
 }
 
 
index c8d25cdf13b19ca22f7e88ede397036ab73f2b14..e4264741ae0f5095e9b653b0816a273faaa2620f 100644 (file)
@@ -83,6 +83,7 @@ static void
 _mesa_delete_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj)
 {
    (void) ctx;
+   free(syncObj->Label);
    free(syncObj);
 }
 
index 7c8f04db96676180527ef80b25c5a164c3d21436..cc2c786bb243f59780d7539c48bbec6b2d1cc124 100644 (file)
@@ -238,6 +238,8 @@ _mesa_delete_texture_object(struct gl_context *ctx,
    /* destroy the mutex -- it may have allocated memory (eg on bsd) */
    _glthread_DESTROY_MUTEX(texObj->Mutex);
 
+   free(texObj->Label);
+
    /* free this object */
    free(texObj);
 }
index 03f1883005073d0b10c09c7bd46300a06ec482ba..3f8a7f48daddba67a0ce384e8a74280a88fd2b81 100644 (file)
@@ -195,6 +195,7 @@ delete_transform_feedback(struct gl_context *ctx,
       _mesa_reference_buffer_object(ctx, &obj->Buffers[i], NULL);
    }
 
+   free(obj->Label);
    free(obj);
 }
 
index 2e5e253a41fcd0f4a32b2739be1f3a197c57fba2..25cc61aefd02bccee2ec328afa383714ae4b820b 100644 (file)
@@ -81,6 +81,7 @@ st_bufferobj_free(struct gl_context *ctx, struct gl_buffer_object *obj)
    if (st_obj->buffer) 
       pipe_resource_reference(&st_obj->buffer, NULL);
 
+   free(st_obj->Base.Label);
    free(st_obj);
 }
 
index 94bf4861da92c1333b7e7ff0bbd9aa932f0107f2..6d875b851a2d36bf11ff8c17657dfca0cb70ce93 100644 (file)
@@ -60,6 +60,7 @@ static void st_delete_sync_object(struct gl_context *ctx,
    struct st_sync_object *so = (struct st_sync_object*)obj;
 
    screen->fence_reference(screen, &so->fence, NULL);
+   free(so->b.Label);
    free(so);
 }