diff options
author | David Reveman <davidr@novell.com> | 2008-11-11 17:03:28 -0500 |
---|---|---|
committer | David Reveman <davidr@novell.com> | 2008-11-11 17:03:28 -0500 |
commit | 9fd9c35af06182d802b31936cc89e334fd85b56d (patch) | |
tree | ef410305a707c4319f0d6224077028c6a1622d93 | |
parent | 893d5ddda929e323f82f211147390fb153eff52b (diff) |
Release randr mode references properly.
-rw-r--r-- | hw/dmx/dmxrandr.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/hw/dmx/dmxrandr.c b/hw/dmx/dmxrandr.c index 41e7624f4..f0b69fb58 100644 --- a/hw/dmx/dmxrandr.c +++ b/hw/dmx/dmxrandr.c @@ -225,7 +225,12 @@ dmxRRUpdateCrtc (ScreenPtr pScreen, XLIB_EPILOGUE (dmxScreen); if (!gamma) + { + if (mode) + RRModeDestroy (mode); + return FALSE; + } RRCrtcGammaSet (crtc, gamma->red, gamma->green, gamma->blue); @@ -236,6 +241,9 @@ dmxRRUpdateCrtc (ScreenPtr pScreen, if (outputs) xfree (outputs); + if (mode) + RRModeDestroy (mode); + XRRFreeCrtcInfo (c); return TRUE; @@ -634,6 +642,9 @@ dmxRRGetInfo (ScreenPtr pScreen, dmxScreen->rootX, dmxScreen->rootY, RR_Rotate_0, 1, &pScrPriv->outputs[baseOutput]); + + if (mode) + RRModeDestroy (mode); } else { |