Onboard crashes the entire desktop (Xorg crashes in _XkbSetMapChecks xkb.c:2387)

Bug #1809737 reported by Josh on 2018-12-25
46
This bug affects 6 people
Affects Status Importance Assigned to Milestone
Onboard
Undecided
Unassigned
X.Org X server
New
Unknown
onboard (Ubuntu)
Undecided
sonald
xorg-server (Ubuntu)
High
Unassigned

Bug Description

Onboard 1.4.1 crashes the entire Desktop if I selected any alternate character from pop-up

[bishop@fringe ~]$ ls /usr/share/xsessions/
xfce.desktop

[bishop@fringe ~]$ echo $XDG_CURRENT_DESKTOP
XFCE

[bishop@fringe ~]$ echo $XDG_SESSION_TYPE
x11

[bishop@fringe ~]$ cat /etc/*-release
Fedora release 29 (Twenty Nine)
NAME=Fedora
VERSION="29 (Twenty Nine)"
ID=fedora
VERSION_ID=29
VERSION_CODENAME=""
PLATFORM_ID="platform:f29"
PRETTY_NAME="Fedora 29 (Twenty Nine)"
ANSI_COLOR="0;34"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:29"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f29/system-administrators-guide/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=29
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=29
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
Fedora release 29 (Twenty Nine)
Fedora release 29 (Twenty Nine)

Josh (hotspot12) on 2018-12-25
description: updated
Paweł Szymański (ineedmana) wrote :

I have the same problem. It happens when a character from outside of current layout is chosen. For instance I set `setxkbmap -layout pl`. When choosing "ć" from popup (a character that belongs to "pl" layout) everything is fine. The character gets into text. But choosing something else causes Fluxbox (1.3.7) to segfault (corrupted stack?) in standard library:

Program received signal SIGSEGV, Segmentation fault.
0x00007f73bdbfca31 in std::_Rb_tree_rebalance_for_erase (__z=0x5584f9fe63a0, __header=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++98/tree.cc:144
144 /build/gcc/src/gcc/libstdc++-v3/src/c++98/tree.cc: No such file or directory.
(gdb) bt
#0 0x00007f73bdbfca31 in std::_Rb_tree_rebalance_for_erase (__z=0x5584f9fe63a0, __header=...) at /build/gcc/src/gcc/libstdc++-v3/src/c++98/tree.cc:144
#1 0x00005584f8818e08 in ?? ()
Backtrace stopped: Cannot access memory at address 0x7ffefd853048

handsome_feng (feng-kylin) wrote :

I can reproduce too.

Sebastien Bacher (seb128) wrote :

The Xserver segfault so likely an issue there, I reported it upstream on https://gitlab.freedesktop.org/xorg/xserver/issues/679

Changed in xorg-server (Ubuntu):
importance: Undecided → High
status: New → Triaged
Changed in xorg-server:
status: Unknown → New

Although this bug was reported against Fedora, it sounds like Seb has reproduced it with Ubuntu 19.04.

summary: - Onboard crashes the entire desktop
+ Onboard crashes the entire desktop (Xorg crashes in _XkbSetMapChecks)
tags: added: disco
Angelos Mylonas (amylonas) wrote :

Just a friendly bump.

This bug exists in Slackware too.

Stefan Kuczera (cass00) wrote :

Does anyone have a workaround?

Daniel van Vugt (vanvugt) wrote :
tags: added: bionic
summary: - Onboard crashes the entire desktop (Xorg crashes in _XkbSetMapChecks)
+ Onboard crashes the entire desktop (Xorg crashes in _XkbSetMapChecks
+ xkb.c:2387)
sonald (yinshuiboy) wrote :

I have a fix, which I've tested on Deepin. I think the main reason is that ChangeMap request needs more info than provided.

The attachment "0001-fix-handle-map-keysym-correctly.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Daniel van Vugt (vanvugt) wrote :

sonald,

Please propose your fix in the upstream bug:
https://gitlab.freedesktop.org/xorg/xserver/issues/679

sonald (yinshuiboy) wrote :

daniel,

This is an attempted fix for onboard, is it appropriate to submit to xserver project?
BTW, I'm still wondering why this have not been fixed for so long.

Daniel van Vugt (vanvugt) wrote :

Oops, sorry. I was expecting a Xorg fix since that's what's crashing, and probably should still get its own fix.

Sorry I can't tell where to propose Onboard fixes other than here. It doesn't look like it is being maintained(?)

Changed in onboard (Ubuntu):
assignee: nobody → sonald (yinshuiboy)
status: New → In Progress
sonald (yinshuiboy) wrote :

I don't know where to submit either, it's a pity. hope someone may merge the fix.

Is there a packaged version available with the fix for this bug? I'll have one problematic machine for a few days so I can test. However, it is an Intel Atom netbook, unlikely to be successful building onboard directly on it.

I did a build applying the patch (fortunately no GTK 3 build was required) and I was testing with one offending netbook.

The crash no longer happens when using the patched onboard version, and I noticed that after I ran and added a letter with accent at least once with the patched version, the onboard version from the repositories also works.

However, there is a bug where the keyboard layout changes as I write it and some letters add the wrong characters. The attached video shows the problem, notice what happens with the "ç" character.

sonald (yinshuiboy) wrote :

thanks for the feedback, I'll test and try to fix it later

Hello,

Thanks for the patch, it applies flawlessly and fixes the issue!

This bug is happening on Ubuntu Focal Daily too.

Cagnulein (cagnulein) wrote :

This bug is happening on Debian 10 too.

Cagnulein (cagnulein) wrote :

i created a debian 10 package with this patch. I hope it could be useful to someone

RdT (richaardvark) wrote :

Hi Cagnulein - thank you so much for making this patch! I am having trouble installing it however on MX Linux 19.2, which is based on Debian 10. Your file name says your patch is for Onboard version 1.3.1-5, however when you unzip the file the version of Onboard contained within is 1.4.1-5. I am trying to install Onboard 1.4.1-5 and your .deb files onto my Debian 10 Buster system, but it won't let me install any version of Onboard newer than 1.4.1-4. How did you install your patched version to your Debian 10 system? Thank you!

RdT (richaardvark) wrote :

Never mind - I figured out how to recompile the source Onboard package for Debian 10 and was able to incorporate sonald's (yinshuiboy) patch (see post #8) into updated .deb installation files. I have zipped this updated version and it is attached for anyone who may find it useful. Thanks!

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.