summaryrefslogtreecommitdiff
path: root/src/glx/x11
diff options
context:
space:
mode:
authorRALOVICH, Kristóf <tade60@freemail.hu>2009-07-23 17:04:52 +0200
committerBrian Paul <brianp@vmware.com>2009-07-28 10:35:56 -0600
commite32b601e7d79e8fa67b3e9f636125eebc01f3884 (patch)
tree4a9b448ed6e317fd82e61c4900d1354e852273d5 /src/glx/x11
parentce0ad53281f236424a72ae021f293a3a5ca69217 (diff)
glx: properly release DRI configs
Release per screen DRI driver configs during screen destruction.
Diffstat (limited to 'src/glx/x11')
-rw-r--r--src/glx/x11/glxext.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c
index b296b7c651..3078662c9d 100644
--- a/src/glx/x11/glxext.c
+++ b/src/glx/x11/glxext.c
@@ -149,6 +149,12 @@ FreeScreenConfigs(__GLXdisplayPrivate * priv)
Xfree((char *) psc->serverGLXexts);
#ifdef GLX_DIRECT_RENDERING
+ if (psc->driver_configs) {
+ for(unsigned int i = 0; psc->driver_configs[i]; i++)
+ free((__DRIconfig*)psc->driver_configs[i]);
+ free(psc->driver_configs);
+ psc->driver_configs = NULL;
+ }
if (psc->driScreen) {
psc->driScreen->destroyScreen(psc);
__glxHashDestroy(psc->drawHash);