summaryrefslogtreecommitdiffstats
path: root/src/glx/dri2_glx.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/glx/dri2_glx.c')
-rw-r--r--src/glx/dri2_glx.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c
index 6ac03cf0cfb..df7ad477ffd 100644
--- a/src/glx/dri2_glx.c
+++ b/src/glx/dri2_glx.c
@@ -86,6 +86,7 @@ struct dri2_screen {
const __DRI2flushExtension *f;
const __DRI2configQueryExtension *config;
const __DRItexBufferExtension *texBuffer;
+ const __DRIconfig **driver_configs;
void *driver;
int fd;
@@ -428,6 +429,7 @@ dri2DestroyScreen(__GLXscreenConfigs *base)
/* Free the direct rendering per screen data */
(*psc->core->destroyScreen) (psc->driScreen);
+ driDestroyConfigs(psc->driver_configs);
close(psc->fd);
Xfree(psc);
}
@@ -785,7 +787,7 @@ dri2CreateScreen(int screen, __GLXdisplayPrivate * priv)
psc->base.visuals =
driConvertConfigs(psc->core, psc->base.visuals, driver_configs);
- psc->base.driver_configs = driver_configs;
+ psc->driver_configs = driver_configs;
psp = &psc->vtable;
psc->base.driScreen = psp;