crash on XSetIMValues() call when using xim and esperanto locale

Bug #83142 reported by Aristides Caldeira
16
This bug affects 1 person
Affects Status Importance Assigned to Milestone
GTK+
Expired
Critical
gtk+2.0 (Ubuntu)
Incomplete
Medium
Unassigned
libx11 (Ubuntu)
Fix Released
Low
Unassigned

Bug Description

Binary package hint: gedit

I'm using Feisty Herd 2 for about a week. Using the Esperanto locale makes it impossible to use dead keys in any application. When I try to change the input method, to see if it helps, the application crashes.

I have the following variable defined in my /etc/environment file:

GTK_IM_MODULE = "xim"

And I'm using Brazilian ABNT2 model keyboard, with the "br" layout.

When using other locale, say pt_BR, everything works as it should.

I tried to uncomment the lines referring the Esperanto locale in /usr/share/X11/locale/compose.dir and locale.dir, but it hasn't done any effect.

ProblemType: Crash
CrashCounter: 1
Date: Sat Feb 3 22:18:01 2007
Disassembly: 0xb7689d5d:
DistroRelease: Ubuntu 7.04
ExecutablePath: /usr/bin/gedit
Package: gedit 2.17.4-0ubuntu1
ProcCmdline: gedit
ProcCwd: /home/arig
ProcEnviron:
 LANGUAGE=eo_XX:eo:pt_BR:pt:pt_PT:en_GB:en
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
 LANG=eo_XX.UTF-8
 SHELL=/bin/bash
Signal: 11
SourcePackage: gedit
Stacktrace:
 Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
 #0 0xb7689d5d in ?? ()
StacktraceTop: ?? ()
ThreadStacktrace:

Uname: Linux ari 2.6.20-6-generic #2 SMP Wed Jan 31 20:53:39 UTC 2007 i686 GNU/Linux
UserGroups: adm admin audio cdrom dialout dip floppy lpadmin netdev plugdev powerdev scanner video

Revision history for this message
Aristides Caldeira (aristides.caldeira) wrote :
Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for your bug, the backtrace is not useful and the crash file doesn't permit to regenerate one for some reason. Could you try to get one with the dbgsym packages (https://wiki.ubuntu.com/DebuggingProgramCrash) installed for gedit and maybe the input method you are using?

Changed in gedit:
assignee: nobody → desktop-bugs
importance: Undecided → Medium
status: Unconfirmed → Needs Info
Revision history for this message
Aristides Caldeira (aristides.caldeira) wrote : Re: SOLUTION [apport] gedit crashed with SIGSEGV when trying to change input method

Sebastien,

I think I solved this bug, and bug 84011 also: the composing rules of X for the Esperanto locales were commented in file:

/usr/share/X11/locale/compose.dir

lines 97 and 98, 362 and 363, 592 and 593, 857 and 858

and in file

/usr/share/X11/locale/locale.dir

lines 97 and 98, 345 and 346, 577 and 578, 825 and 826

Once I uncommented those lines, dead keys started to work again, and right-clicking in gedit to change input method also worked.

Well, it solved the bug for me, but still doesn't explain why gedit crashed anyhow...

Thanks for your time, should I file another bug to make those lines to be uncommented?

Revision history for this message
Sebastien Bacher (seb128) wrote : Re: [apport] gedit crashed with SIGSEGV when trying to change input method

Those lines seems to be commented for a reason, the file has that text:

"# Esperato (eo) is not supported by the GNU C Library and neither the
# EO nor XX territories exist in ISO 3166"

Could you still get the backtrace for the gedit crasher?

Revision history for this message
Aristides Caldeira (aristides.caldeira) wrote :

I saw the comment just above the commented lines. It explains why they were commented, but doesn't justify the commenting. As you can see here:

http://www.unicode.org/cldr/data/charts/summary/eo.html
http://www.loc.gov/standards/iso639-2/php/code_list.php

the code "eo" for the language Esperanto is a valid one, even if the GNU C Library doesn't support it; anyhow, libx11 doesn't need "eo" to be supported by glibc, otherwise, when those lines are uncommented, things would break somehow, and that doesn't occur.

As for the "XX" territory, see:

http://unicode.org/reports/tr35/tr35-6.html

and search for territory_code, twice, and you will see that XX is a code allowed for private use, which is the case, since Esperanto is a language that doesn't necessary belong to a specific territory. As state on that page, ZZ would be a valid code also.

And, finally, what I just wrote on

https://launchpad.net/ubuntu/+source/gdm/+bug/84011

is valid for this bug too: I think I installed all the necessary packages, but the bomb icon doesn't appear, and I don't know what to do to generate the backtrace you need.

Revision history for this message
Sebastien Bacher (seb128) wrote :

closing the bug for now then, feel free to reopen if you can get the required backtrace (the crash files are stored to /var/crash). You might have some arguments about the esperanto locale, you are commenting at the wrong place though, desktop team doesn't work on those packages. You might want to mail the ubuntu-devel list about the topic rather

Changed in gedit:
status: Needs Info → Rejected
Revision history for this message
Aristides Caldeira (aristides.caldeira) wrote :

Just one last comment:

I just did a fresh install of the system using the Herd 3 CD.

I chose the No locale option when installing, thus the system had no locale when I first logged in.

I updated the system completely, and the installed the necessary dbg and dbgsym packages. Only after that, I installed the language support for Esperanto and set it to be the default locale of the system.

I restarted the system, and gdm didn't crash, neither gedit, when trying to change the input method. Dead keys with xim input method were still not working, but I could change to "cedilla" input method.

Then, I purged the dbg and dbgsym packages. Gdm still worked, but gedit started to crash when I tried to change the input method, but generated no crash report in /var/crash. Xim still didn't work, it works only when I uncomment those lines in /usr/share/X11/locale files.

Sorry I couldn't help more.

I'm posting this comment in bug 84011 too, because it is still open.

Revision history for this message
Sebastien Bacher (seb128) wrote :

could you try to get a crash file again? apport was not running for technical reason and that's fixed now if you run the new version

Revision history for this message
Aristides Caldeira (aristides.caldeira) wrote :

Sending crash file.

I hope this is what you need.

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for the crash file, I've forwarded that upstream to the GTK bug tracker: http://bugzilla.gnome.org/show_bug.cgi?id=407996

Changed in gedit:
status: Rejected → Confirmed
Changed in gtk:
status: Unknown → Unconfirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

do you still the issue in hardy or intrepid?

Changed in gtk+2.0:
status: Confirmed → Triaged
Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

I have have installed Ubuntu-8.10 Intrepid (upgrade from 8.04.1) and I noticed several bugs:

* the compose key did not work at all
* vim-7.1.314 from Ubuntu-8.10 crashed when using X clipboard with visual selection.
  This bug is discussed in more details in vim mailing list, see:
   http://groups.google.com/group/vim_dev/browse_thread/thread/55612319d5c737ca
* gnome-terminal worked bug xterm defaulted to "C" locale.

These 3 bugs only happened because eo_XX.UTF-8 locale in Ubuntu is broken,
and it is easy to fix.

I saw that the Esperanto settings in files /usr/share/X11/locale/locale.dir
and /usr/share/X11/locale/compose.dir are commented out. Uncommenting
them resolved all 3 problems.

Please uncomment those lines. I've been using it with the fix
without problems.

Ubuntu works fine with the eo_XX.UTF-8 uncommented out and it
fixes the 3 issues I described.

I think the only reasons those line were commented out is because
someone did check for non existing country codes and stumbled
upon XX. But this should be OK as pointed out by previous comments.
This incorrect change was probably not well reviewed, since the comment
even included a typo (*Esperato* instead of Esperanto)

I also saw the file /usr/share/X11/locale/locale.dir on OpenSUSE-11.0 and the
Esperanto locale settings were not commented there.

Attached is the patch /usr/share/X11/locale/locale.dir file. Please notice:
* esperanto setting uncommented
* some colon characters removed

Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

patch of /usr/share/locale/compose.dir, see above comment.

Can this fix be included in the next release of Ubuntu?

Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

The bug is still present in Ubuntu-9.10 Karmic Koala. The patch I submited in previous comment needs to be changed because Esperanto locale is no longer eo_XX.UTF-8 but it is now eo.UTF-8.

So in files /usr/share/X11/locale/compose.dir and /usr/share/X11/locale/locale.dir, we need to substitute eo_XX.UTF-8 into eo.UTF-8.

In other words, in file /usr/share/X11/locale/locale.dir, lines...

en_US.UTF-8/XLC_LOCALE eo.UTF-8
...
en_US.UTF-8/XLC_LOCALE: eo.UTF-8

... need to be changed into:

en_US.UTF-8/XLC_LOCALE eo.UTF-8
...
en_US.UTF-8/XLC_LOCALE: eo.UTF-8

And in file /usr/share/X11/locale/compose.dir, lines...

en_US.UTF-8/Compose eo_XX.UTF-8
...
en_US.UTF-8/Compose: eo_XX.UTF-8

... need to be changed into:

en_US.UTF-8/Compose eo.UTF-8
...
en_US.UTF-8/Compose: eo.UTF-8

After doing that, everything works fine in Ubuntu-9.10 (so it's easy to fix):
- compose key then works
- launching xterm no longer complains unsupported locale
- and Vim no longer crash

Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

Esperanto locale is no longer eo_XX.UTF-8 but is eo.UTF-8.

So we need to update the following 2 files accordingly:
/usr/share/X11/locale/locale.dir
/usr/share/X11/locale/compose.dir

See attached patch for Ubuntu-9.10 Karmic Koala

Revision history for this message
Sebastien Bacher (seb128) wrote :

the patches are libx11 ones there so adding a libx11 task to the bug now

Bryce Harrington (bryce)
tags: added: crash
Revision history for this message
Bryce Harrington (bryce) wrote :

Hi Ari,

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with the latest development release of Ubuntu? (ISO CD images are available from http://cdimage.ubuntu.com/releases/)

If it remains an issue, could you also attach a new /var/log/Xorg.0.log?
Thanks in advance.

[This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: needs-verification
Changed in libx11 (Ubuntu):
status: New → Incomplete
Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

Bryce Harrington wrote:

> Can you try with the latest development release of Ubuntu?

I'll install the latest Ubuntu shortly after it's released.
I'll then check whether bug is still present.

But in the mean time, if someone has already installed Ubuntu-10.04 beta,
can try post the content of the 2 files?

- /usr/share/X11/locale/compose.dir
- /usr/share/X11/locale/locale.dir

I'm curious about what they contain for the eo.UTF-8 locale.

Or if you prefer, the output of this command would help:

$ grep eo /usr/share/X11/locale/{locale,compose}.dir

Bryce Harrington (bryce)
Changed in libx11 (Ubuntu):
status: Incomplete → New
status: New → Incomplete
Bryce Harrington (bryce)
tags: added: feisty
Revision history for this message
Sebastien Bacher (seb128) wrote :

is that still an issue in lucid? unsubscribe the review team since the changes there don't apply to the lucid version

Changed in libx11 (Ubuntu):
importance: Undecided → Low
Changed in gtk+2.0 (Ubuntu):
assignee: Ubuntu Desktop Bugs (desktop-bugs) → nobody
status: Triaged → Incomplete
Bryce Harrington (bryce)
Changed in libx11 (Ubuntu):
status: Incomplete → New
status: New → Incomplete
Revision history for this message
Dominique Pellé (dominique-pelle) wrote :

I just installed Ubuntu-10.04 (from scratch) and I see that this bug is still present.

Two files /usr/share/X11/locale/{locale,compose}.dir contain "eo_XX" which should be replaced with "eo" since both Debian and Ubuntu now use Esperanto locale eo.utf-8 (they were using eo_XX.utf-8 several releases ago, not sure when change was made).
However, this change to Esperanto locale was not made in /usr/share/X11/locale/{locale,compose}.dir

I attach the simple patch for Ubuntu-10.04 to correct it. I verified that is solves the problem.

tags: added: patch
Bryce Harrington (bryce)
Changed in libx11 (Ubuntu):
status: Incomplete → New
status: New → Incomplete
Revision history for this message
Nigel Babu (nigelbabu) wrote :

Hi Dominique, thank you for testing on Lucid and for the patch. Could you please forward the patch upstream for their comments on the patch?

Bryce Harrington (bryce)
Changed in libx11 (Ubuntu):
status: Incomplete → New
status: New → Incomplete
Changed in gtk:
importance: Unknown → Critical
Revision history for this message
Bryce Harrington (bryce) wrote :

Current codebase (libx11 1.3.3) appears to have changed eo_XX to eo_EO which is more correct than the lucid patch near as I can tell.

Closing out bug at this time.

Changed in libx11 (Ubuntu):
status: Incomplete → Fix Released
Revision history for this message
boucek (boucek) wrote : I can't believe you helped me save over $1,000 on this watches

Hello Customer

Don't hesitate. We do our best to satisfy our customers and ensure fast delivery and excellent service. If you receive a damaged watch we will ship another one to you free of charge.
Make your order before the prices go up.

**************************************************************************************
Today I received my two watches. Both watches were spectacular, you guys did a wonderful job and I will definitely recommend you to all my friends!
Thankee!
                     Marla Friedman
**************************************************************************************

Click here ---> http://ranoa.ru

Changed in gtk:
status: New → Expired
To post a comment you must log in.
This report contains Public information  
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.