aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/glx/glxscreens.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/glx/glxscreens.c')
-rw-r--r--xorg-server/glx/glxscreens.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/xorg-server/glx/glxscreens.c b/xorg-server/glx/glxscreens.c
index 9eb0f7d55..8c81454e6 100644
--- a/xorg-server/glx/glxscreens.c
+++ b/xorg-server/glx/glxscreens.c
@@ -423,7 +423,17 @@ void __glXScreenInit(__GLXscreen *pGlxScreen, ScreenPtr pScreen)
void __glXScreenDestroy(__GLXscreen *screen)
{
+ __GLXconfig *head, *next;
+
+ head = screen->fbconfigs;
+ while (head) {
+ next = head->next;
+ free(head);
+ head = next;
+ }
+
free(screen->GLXvendor);
free(screen->GLXextensions);
free(screen->GLextensions);
+ free(screen->visuals);
}