summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPanagiotis Papadakos <[email protected]>2007-02-05 08:17:50 -0700
committerBrian <[email protected]>2007-02-05 08:17:50 -0700
commiteab92fcdc23a8a9d333227e4c98e6a33a9cc1183 (patch)
treedce99983f0be4ff9de36039ad8a25675088f0bfe
parent47bd759fc9a8f886b90af9a5d53cbb896f37358e (diff)
fix mem leaks
-rw-r--r--src/glx/x11/dri_glx.c1
-rw-r--r--src/glx/x11/glxext.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/src/glx/x11/dri_glx.c b/src/glx/x11/dri_glx.c
index 0649358ecc8..d88ce913644 100644
--- a/src/glx/x11/dri_glx.c
+++ b/src/glx/x11/dri_glx.c
@@ -398,6 +398,7 @@ static void driDestroyDisplay(Display *dpy, void *private)
else
Drivers = driver->next;
+ Xfree(driver->name);
Xfree(driver);
break;
}
diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c
index d24f853d546..a039bca234d 100644
--- a/src/glx/x11/glxext.c
+++ b/src/glx/x11/glxext.c
@@ -396,6 +396,10 @@ static int __glXFreeDisplayPrivate(XExtData *extension)
(*priv->driDisplay.destroyDisplay)(priv->dpy,
priv->driDisplay.private);
priv->driDisplay.private = NULL;
+ if (priv->driDisplay.createNewScreen) {
+ Xfree(priv->driDisplay.createNewScreen); /* free array of ptrs */
+ priv->driDisplay.createNewScreen = NULL;
+ }
#endif
Xfree((char*) priv);