[PATCH 6/8] dix: Switch window unmap to mark normally instead of UnmapValData
Peter Harris
pharris at opentext.com
Mon Nov 17 13:29:26 PST 2014
On 2014-11-17 15:41, Adam Jackson wrote:
> diff --git a/dix/window.c b/dix/window.c
> index a82c294..af63703 100644
> --- a/dix/window.c
> +++ b/dix/window.c
> @@ -2748,7 +2748,7 @@ UnmapWindow(WindowPtr pWin, Bool fromConfigure)
> if (SubStrSend(pWin, pParent))
> DeliverUnmapNotify(pWin, fromConfigure);
> if (wasPaintable && !fromConfigure) {
> - pWin->valdata = UnmapValData;
> + (*pScreen->MarkWindow) (pWin);
> (*pScreen->MarkOverlappedWindows) (pWin, pWin->nextSib, &pLayerWin);
> (*pScreen->MarkWindow) (pLayerWin->parent);
> }
This is going to leak a valdata every time a window wasPaintable and
becomes not paintable. miValidateTree, near the bottom, just sets
valdata to NULL after emptying the clip list. (I didn't see an addition
of a free() in PATCH 2/8, but that hunk should probably be with this
patch anyway to avoid breaking bisect).
Peter Harris
--
Open Text Connectivity Solutions Group
Peter Harris http://connectivity.opentext.com/
Research and Development Phone: +1 905 762 6001
pharris at opentext.com Toll Free: 1 877 359 4866
More information about the xorg-devel
mailing list