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

Bug#612681: x11-common: treat empty session names silently as default session



On 05/17/2011 03:23 PM, Agustin Martin wrote:
On Tue, May 17, 2011 at 01:13:09PM +0200, Agustin Martin wrote:
On Mon, May 16, 2011 at 10:21:14PM +0200, Marko Macek wrote:
On 05/16/2011 03:51 PM, Agustin Martin wrote:
These are the .xsession-error messages for the failing icewm-session invocation
>from wdm (lines with AMD-WARNING are the extra info I requested)
Xsession: X session started for testuser at Mon May 16 15:26:28 CEST 2011
Xsession: AMD-WARNING: Running "/etc/X11/wdm/Xsession" with arguments "icewm-session"
Xsession: AMD-WARNING: Passing session as argument "icewm-session"
/home/testuser/.Xresources:1:24: warning: missing terminating ' character
/home/testuser/.Xresources:13:28: warning: missing terminating ' character
Xsession: AMD-WARNING: starting "/usr/bin/ssh-agent
/usr/bin/ck-launch-session /usr/bin/dbus-launch --exit-with-session
icewm-session"
icewm-session: using /home/testuser/.icewm for private configuration files
IceWM: using /home/testuser/.icewm for private configuration files
icewmtray: using /home/testuser/.icewm for private configuration files
icewmbg: using /home/testuser/.icewm for private configuration files
XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0"
       after 205 requests (205 known processed) with 2 events remaining.
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
       after 110 requests (105 known processed) with 0 events remaining.
XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0"
       after 122 requests (122 known processed) with 0 events remaining.
Invalid MIT-MAGIC-COOKIE-1 keyicewmbg: Can't open display: :0. X must be
running and $DISPLAY set.
Does the X server crash here? Any messages in Xorg log? I found a bug in X in Fedora that fails like this, might be the same.
If I have time today, I will try to reproduce the problem once again, but now
looking more carefully at Xorg log.
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



Regards,





Reply to: