[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#626774: xserver-xorg-core: Crashes server when loading background color from 'icewmbg' and 'pcmanfm --desktop'



On Tue, May 17, 2011 at 07:18:44PM +0200, Marko Macek wrote:
> On 05/17/2011 03:23 PM, Agustin Martin wrote:
> >For the records, it crashes the X server, leaving a message in Xorg log,
> >
> >[   855.821]
> >Backtrace:
> >[   855.821] 0: /usr/bin/X (xorg_backtrace+0x37) [0x80ed307]
> >[   855.821] 1: /usr/bin/X (0x8048000+0x6356a) [0x80ab56a]
> >[   855.821] 2: (vdso) (__kernel_rt_sigreturn+0x0) [0xb77ba40c]
> >[   855.822] 3: /usr/bin/X (0x8048000+0xbf6d2) [0x81076d2]
> >[   855.822] 4: /usr/bin/X (ChangeWindowAttributes+0xcdc) [0x80a06bc]
> >[   855.822] 5: /usr/bin/X (0x8048000+0x26f7e) [0x806ef7e]
> >[   855.822] 6: /usr/bin/X (0x8048000+0x2d527) [0x8075527]
> >[   855.822] 7: /usr/bin/X (0x8048000+0x205ac) [0x80685ac]
> >[   855.822] 8: /lib/i686/cmov/libc.so.6 (__libc_start_main+0xe6) [0xb74b6e46]
> >[   855.822] 9: /usr/bin/X (0x8048000+0x208c1) [0x80688c1]
> >[   855.823] Segmentation fault at address 0x10
> >[   855.823]
> >Fatal server error:
> >[   855.823] Caught signal 11 (Segmentation fault). Server aborting
> >[   855.823]
> >
> >But note that this is not the original problem in this bug report.
> >
> >This one rather seems a problem either in icewm or in xserver-xorg-core. I
> >have some other things to do now, but hope to have time to go to #626331 and
> >clone a specific bug for the icewm part. Since I am not sure if xorg or icewm
> >is to blame, I will reassign to both simultaneously, so both teams can look
> >at the problem
> 
> I posted this patch for review at:
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=684556 (probably wrong bug)
> 
> Haven't posted it to xorg-devel yet.
> 
> 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
> 
> 

Hi, Marko,

Noticed that you also posted the proposed fix to icewmbg related bug report,

http://sourceforge.net/tracker/?func=detail&atid=100031&aid=3289566&group_id=31

I am sending a copy of your reply to 

  http://bugs.debian.org/626774 [crash on loading background image]
 
which may be related to the same problem (ancient xv sources seems to use
XSetWindowBackgroundPixmap), and to

 http://bugs.debian.org/626331 [gnome-settings-daemon doesn't allow to log 
into IceWM, LXDE.]

and cc'ing submitters in case they want to add something.

By the way, Just noticed a mail from Sergio Cipolla to #626331 reporting 
that for both 'icewmbg' and 'pcmanfm --desktop' seems that using a 
background image instead of a background colour also prevents the X 
session from crashing.

Regards,

-- 
Agustin



Reply to: