Mesa (master): r300g: Fix memory leak on memory allocation failure.

Vinson Lee vlee at kemper.freedesktop.org
Mon Feb 1 06:39:08 UTC 2010


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

Author: Vinson Lee <vlee at vmware.com>
Date:   Sun Jan 31 22:38:25 2010 -0800

r300g: Fix memory leak on memory allocation failure.

---

 src/gallium/drivers/r300/r300_screen.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c
index fa8ed58..4cef9a0 100644
--- a/src/gallium/drivers/r300/r300_screen.c
+++ b/src/gallium/drivers/r300/r300_screen.c
@@ -375,8 +375,11 @@ struct pipe_screen* r300_create_screen(struct radeon_winsys* radeon_winsys)
     struct r300_screen* r300screen = CALLOC_STRUCT(r300_screen);
     struct r300_capabilities* caps = CALLOC_STRUCT(r300_capabilities);
 
-    if (!r300screen || !caps)
+    if (!r300screen || !caps) {
+        FREE(r300screen);
+        FREE(caps);
         return NULL;
+    }
 
     caps->pci_id = radeon_winsys->pci_id;
     caps->num_frag_pipes = radeon_winsys->gb_pipes;




More information about the mesa-commit mailing list