On Sun,  9 Oct 2011 01:11:04 +0300, Ville Syrjala <[email protected]> wrote:

> Previously the parent constrained borderClip was copied over
> when compRedirectWindow() is called. That is insufficient eg. in
> case the window was already redirected, but not yet realized. So
> copy the borderClip over in compAllocPixmap() instead.

Ah, because (*miSetRedirectBorderClipProc) is only called when
pWin->redirectDraw is not RedirectDrawNone, so the cw->borderClip region
is not kept up-to-date while the window is unmapped.

> -     /* Make sure our borderClip is correct for ValidateTree */
>       RegionNull(&cw->borderClip);
> -     RegionCopy(&cw->borderClip, &pWin->borderClip);
> -     cw->borderClipX = pWin->drawable.x;
> -     cw->borderClipY = pWin->drawable.y;

Note that compCheckRedirect is called before ValidateTree in this
function, so the region *will* get copied if the window is realized.

Reviewed-by: Keith Packard <[email protected]>

-- 
[email protected]

Attachment: pgp9pSVaHS63r.pgp
Description: PGP signature

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to