GNOME Bugzilla – Bug 334084
gnome-settings-daemon problem with xorg-xklavier on initial launch (crashes)
Last modified: 2006-03-28 00:36:28 UTC
Steps to reproduce: 1. Launch a different session than gnome (eg, fvwm or m#wmaker) 2. Start a simple gtk2-application like gnome-commander 3. Issue as user in xterm: gnome-settings-daemon --> crashs 4. Wait until the error feedback appears in logfile (.xsession-errors) 5. Issue again 'gnome-settings-daemon' --> this time it works. Stack trace: This is the stout error log (shortened) when i start g.s.d. from a shell: /home mi: gnome-settings-daemon Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols Ignoring extra symbols Warning: No symbols defined for <FK13> (keycode 118) Warning: No symbols defined for <FK14> (keycode 119) Warning: No symbols defined for <FK15> (keycode 120) Warning: No symbols defined for <FK16> (keycode 121) Warning: No symbols defined for <FK17> (keycode 122) Warning: No symbols defined for <KPDC> (keycode 123) [...snip (much more of this stuff)...] Warning: No symbols defined for <I7F> (keycode 255) The program 'gnome-settings-daemon' received an X Window System error. This probably reflects a bug in the program. The error was 'BadValue (integer parameter out of range for operation)'. (Details: serial 1440 error_code 2 request_code 149 minor_code 9) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) [1141951697,000,xklavier.c:XklStartListen/] The backend does not require manual layout manipulation This is my box: # Machine: i586 # Kernel: Linux 2.6.15-4 (custom) # Debian GNU/Linux testing/unstable # Installed: libc6 2.3.5-13 libc6-dev 2.3.5-13 gcc 4:4.0.2-2 gcc-2.95 1:2.95.4-22 gcc-3.3-base 1:3.3.6-10 gcc-3.4 3.4.5-2 gcc-3.4-base 3.4.5-2 gcc-3.4-doc 3.4.5-2 gcc-4.0 4.0.2-9 gcc-4.0-base 4.0.2-9 gcc-4.0-doc 4.0.2-9 gcc-4.0-locales 4.0.2-9 bash 3.1-2 bash-doc 3.1-2 xserver-common 6.9.0.dfsg.1-4 xserver-xorg 6.9.0.dfsg.1-4 xlibs 6.9.0.dfsg.1-4 xlibs-data 6.9.0.dfsg.1-4 xutils 6.9.0.dfsg.1-4 libfreetype6 2.1.10-1 libfreetype6-dev 2.1.10-1 libfreetype6-dev 2.1.10-1 wmaker 0.92.0-5.2 wmaker-data 0.8-2 wmakerconf 2.11-3 wmakerconf-data 0.90.0.0-2 mozilla-firefox 1.0.7-1 mozilla-firefox-dom-inspector 1.0.7-1 mozilla-firefox-locale-de-de 1.0.4lang20050515-1 mozilla-firefox-webdeveloper 0.9.4-1 galeon 2.0.0-2 galeon-common 2.0.0-2 gconf 1.0.9-7.1 gconf-editor 2.12.1-2 gconf2 2.12.1-9 gconf2-common 2.12.1-9 libgtk2-perl 1:1.104-1 libgtk2.0-0 2.8.12-1 libgtk2.0-0-dbg 2.8.12-1 libgtk2.0-bin 2.8.12-1 libgtk2.0-common 2.8.12-1 libgtk2.0-dev 2.8.12-1 libgtk1.2 1.2.10-18 libgtk1.2-common 1.2.10-18 libgtk1.2-dbg 1.2.10-18 libgtk1.2-dev 1.2.10-18 libgtkhtml2-0 2.6.3-1 libgtkhtml3.0-2 3.0.9-0jds1 libgtkhtml3.0-4 3.0.10-1 libgtkhtml3.2-11 3.2.5-1 libgtkhtml3.6-18 3.6.2-1 libgtkxmhtml1 1.4.2-31 libgnome-desktop-0 2.0.9-1 libgnome-desktop-2 2.12.2-2 libgnome-dev 1.4.2-31 libgnome-keyring-dev 0.4.8-1 libgnome-keyring0 0.4.8-1 libgnome-mag1 1:0.10.11-1 libgnome-mag2 1:0.12.3-1 libgnome-menu0 2.10.2-1 libgnome-menu2 2.12.0-2.1 libgnome-perl 0.7009-6 libgnome-pilot1 0.1.71-5woody1 libgnome-pilot2 2.0.12-1.4 libgnome-vfs-common 1.0.5-5.3 libgnome-vfs-dev 1.0.5-5.3 libgnome-vfs0 1.0.5-5.3 libgnome-vfsmm-2.6-1c2a 2.10.0-1 libgnome2-0 2.12.0.1-5 libgnome2-canvas-perl 1.002-1 libgnome2-common 2.12.0.1-5 libgnome2-dev 2.12.0.1-5 libgnome2-perl 1.023-1 libgnome2-vfs-perl 1.041-1 libgnome32 1.4.2-31 libgnomecanvas2-0 2.12.0-2 libgnomecanvas2-common 2.12.0-2 libgnomecanvas2-dev 2.12.0-2 libgnomecups1.0-1 0.2.2-1 libgnomecupsui1.0-1c2a 0.31-1.1 libgnomedb2-4 1.2.2-1 libgnomedb2-common 1.2.2-1 libgnomemm1.2-9 1.2.4-2 libgnomeprint-bin 0.37-11 libgnomeprint2-0 1.116.1-1 libgnomeprint2-data 1.116.1-1 libgnomeprint2.2-0 2.12.1-3 libgnomeprint2.2-data 2.12.1-3 libgnomeprintui-0 1.116.0-3 libgnomeprintui2.2-0 2.12.1-2 libgnomeprintui2.2-common 2.12.1-2 libgnomesupport0 1.4.2-31 libgnomeui-0 2.12.1-1 libgnomeui-common 2.12.1-1 libgnomeui-dev 2.12.1-1 libgnomeui32 1.4.2-31 libgnomevfs2-0 2.12.2-5 libgnomevfs2-common 2.12.2-5 libgnomevfs2-dev 2.12.2-5 libbonoboui2-0 2.10.1-2 libbonoboui2-common 2.10.1-2 libbonoboui2-dev 2.10.1-2 libbonobo-activation4 1:2.4.0-4 libbonobo-conf0 0.16-1.2 libbonobo2-0 2.10.1-1 libbonobo2-common 2.10.1-1 libbonobo2-dev 2.10.1-1 libbonoboui2-0 2.10.1-2 libbonoboui2-common 2.10.1-2 libbonoboui2-dev 2.10.1-2 libgnomecanvas2-0 2.12.0-2 libgnomecanvas2-common 2.12.0-2 libgnomecanvas2-dev 2.12.0-2 Other information: I use to run gtk-2 apps tuned with gnome-settings-daemon (themes) in wmaker session. It worked well until one of the last upgrades. Other changes: Moved to kernel 2.6.15-4. I filed this as bug becuase the daemon itself said so. But maybe it's just my specific box configuration...
*** Bug 331507 has been marked as a duplicate of this bug. ***
I'm seeing this in SUSE 10.1 with a GNOME session. gnome-control-center 2.12.2, xorg-x11-server 6.9.0. On the client side, the error is coming from:
+ Trace 67115
On the server side, it's CheckKeySyms() in Xserver/xkb/xkb.c, which is setting client->errorValue to 0x16710003. (I'd need to rebuild X without optimization to figure out anything more though.) I can't find much in the way of Xkb docs, so the debugging is going slowly... svu? anyone?
Appears to be a problem in xkeyboard-config. Action is happening at: https://launchpad.net/distros/ubuntu/+source/xkeyboard-config/+bug/35845 It would still probably be good to stop g-s-d from crashing in this case. Ray Strode pointed me to a patch that went into FC5 at the last minute to block the crash. I've modified it to also cause the libxklavier call to return False in that case, so that g-s-d will pop up its "couldn't set keyboard map" error dialog. bugs.freedesktop.org doesn't have a libxklavier product, so I'm just going to post the patch here.
Created attachment 61860 [details] [review] libxklavier patch to catch the X error based on http://people.redhat.com/rstrode/libxklavier-2.1.0.2006.02.23-trap-x-error.patch
Committed (to the branch v_2_x of libxklavier)