Mesa (master): st/dri: Fix memory leak on error path.

Vinson Lee vlee at kemper.freedesktop.org
Tue Nov 8 04:37:37 UTC 2011


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

Author: Vinson Lee <vlee at vmware.com>
Date:   Sat Nov  5 22:19:31 2011 -0700

st/dri: Fix memory leak on error path.

Fixes Coverity resource leak defect.

Reviewed-by: José Fonseca <jfonseca at vmware.com>

---

 src/gallium/state_trackers/dri/drm/dri2.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/gallium/state_trackers/dri/drm/dri2.c b/src/gallium/state_trackers/dri/drm/dri2.c
index a6bf3c1..4e3f106 100644
--- a/src/gallium/state_trackers/dri/drm/dri2.c
+++ b/src/gallium/state_trackers/dri/drm/dri2.c
@@ -306,8 +306,10 @@ dri2_allocate_buffer(__DRIscreen *sPriv,
 
    buffer->resource =
       screen->base.screen->resource_create(screen->base.screen, &templ);
-   if (!buffer->resource)
+   if (!buffer->resource) {
+      FREE(buffer);
       return NULL;
+   }
 
    memset(&whandle, 0, sizeof(whandle));
    whandle.type = DRM_API_HANDLE_TYPE_SHARED;




More information about the mesa-commit mailing list