All of the crts and outputs were freed, but not the arrays full of
pointers to them.

Signed-off-by: Keith Packard <[email protected]>
---
 randr/randr.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/randr/randr.c b/randr/randr.c
index 1c1d0c4..5944564 100644
--- a/randr/randr.c
+++ b/randr/randr.c
@@ -98,6 +98,8 @@ RRCloseScreen (int i, ScreenPtr pScreen)
     for (j = pScrPriv->numOutputs - 1; j >= 0; j--)
        RROutputDestroy (pScrPriv->outputs[j]);
     
+    xfree (pScrPriv->crtcs);
+    xfree (pScrPriv->outputs);
     xfree (pScrPriv);
     RRNScreens -= 1;   /* ok, one fewer screen with RandR running */
     return (*pScreen->CloseScreen) (i, pScreen);    
-- 
1.6.3.3

_______________________________________________
xorg-devel mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to