crash after setting root background to None, then setting color - patch for review
Daniel Stone
daniel at fooishbar.org
Sat May 21 05:28:36 PDT 2011
Hi,
On Tue, May 17, 2011 at 08:22:02PM +0200, Marko Macek wrote:
> Please review/apply this patch:
>
> diff -ru xorg-server-1.10.1/dix/window.c xorg-server-1.10.1-new/dix/window.c
> --- xorg-server-1.10.1/dix/window.c 2011-02-25 04:27:25.000000000 +0100
> +++ xorg-server-1.10.1-new/dix/window.c 2011-05-15 15:15:03.912919996 +0200
> @@ -474,6 +474,7 @@
> pWin->background.pixel = pScreen->whitePixel;
> backFlag |= CWBackPixmap;
> } else {
> + pWin->backgroundState = BackgroundPixel;
> if (whiteRoot)
> pWin->background.pixel = pScreen->whitePixel;
> else
> @@ -972,6 +973,7 @@
> else if (party_like_its_1989)
> MakeRootTile(pWin);
> else {
> + pWin->backgroundState = BackgroundPixel;
> if (whiteRoot)
> pWin->background.pixel = pScreen->whitePixel;
> else
Looks good to me.
> The code could also be made more robust (check for pixmap != None, set it to None after Destroy). Should I do it?
Well, InitRootWindow is only called when the root is first being
created, and the only caller of SetRootWindowBackground, being
ChangeWindowAttributes, already destroys the background pixmap if it's
not None. So it looks like it should be fine already.
I've merged this into my tree and it should get picked up for master
soon. Thanks!
Cheers,
Daniel
More information about the xorg-devel
mailing list