Mesa (master): wgl: Report memory leaks.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Wed Feb 18 11:17:26 UTC 2009


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

Author: José Fonseca <jfonseca at vmware.com>
Date:   Tue Feb 17 21:53:40 2009 +0000

wgl: Report memory leaks.

---

 src/gallium/state_trackers/wgl/shared/stw_device.c |   10 ++++++++++
 src/gallium/state_trackers/wgl/shared/stw_device.h |    4 ++++
 2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/src/gallium/state_trackers/wgl/shared/stw_device.c b/src/gallium/state_trackers/wgl/shared/stw_device.c
index 6873e81..903606b 100644
--- a/src/gallium/state_trackers/wgl/shared/stw_device.c
+++ b/src/gallium/state_trackers/wgl/shared/stw_device.c
@@ -66,6 +66,10 @@ stw_shared_init(const struct stw_winsys *stw_winsys)
    stw_dev = &stw_dev_storage;
    memset(stw_dev, 0, sizeof(*stw_dev));
 
+#ifdef DEBUG
+   stw_dev->memdbg_no = debug_memory_begin();
+#endif
+   
    stw_dev->stw_winsys = stw_winsys;
 
    stw_dev->screen = stw_winsys->create_screen();
@@ -87,5 +91,11 @@ error1:
 void
 stw_shared_cleanup(void)
 {
+   if(stw_dev) {
+#ifdef DEBUG
+      debug_memory_end(stw_dev->memdbg_no);
+#endif
+   }
+
    stw_dev = NULL;
 }
diff --git a/src/gallium/state_trackers/wgl/shared/stw_device.h b/src/gallium/state_trackers/wgl/shared/stw_device.h
index bc0bce3..c1e0412 100644
--- a/src/gallium/state_trackers/wgl/shared/stw_device.h
+++ b/src/gallium/state_trackers/wgl/shared/stw_device.h
@@ -35,6 +35,10 @@ struct stw_device
 {
    const struct stw_winsys *stw_winsys;
    struct pipe_screen *screen;
+   
+#ifdef DEBUG
+   unsigned long memdbg_no;
+#endif
 };
 
 




More information about the mesa-commit mailing list