After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 139679 - Gnome terminal crashes when it have to display some non-US characters.
Gnome terminal crashes when it have to display some non-US characters.
Status: RESOLVED DUPLICATE of bug 139030
Product: gnome-terminal
Classification: Core
Component: general
unspecified
Other Linux
: Normal critical
: ---
Assigned To: GNOME Terminal Maintainers
GNOME Terminal Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-04-10 21:24 UTC by Zsombor G.
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.5/2.6



Description Zsombor G. 2004-04-10 21:24:33 UTC
Description of Problem:

Steps to reproduce the crash:
1. Open terminal
2. Start mc
3. Open a text file
4. Switch to Hungarian keyboard
5. Type characters like: đĐŧeéőúűó

Expected Results:

  The file contains the typed characters

How often does this happen?
  Always, but I cant find any specific character
which triggers this.
  

Additional Information:
Comment 1 Mariano Suárez-Alvarez 2004-04-10 21:27:22 UTC
Thanks for the bug report. Without a stack trace from the crash it's very hard
to determine what caused the crash. Please see
http://bugzilla.gnome.org/getting-traces.cgi for more information about getting
a useful stack trace.
Comment 2 Mariano Suárez-Alvarez 2004-04-18 02:39:15 UTC
Also, can you attach a string that crashes gnome-terminal (bugzilla does not
treat non-ascii characters in comments very nicely...)
Comment 3 Zsombor G. 2004-04-18 08:41:29 UTC
Backtrace was generated from '/usr/bin/gnome-terminal'

(no debugging symbols found)...Using host libthread_db library
"/lib/libthread_db.so.1".
(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...[Thread
debugging using libthread_db enabled]
[New Thread 16384 (LWP 1616)]

0x40cb8137 in waitpid () from /lib/libpthread.so.0

Thread 1 (Thread 16384 (LWP 1616))

  • #0 waitpid
    from /lib/libpthread.so.0
  • #1 libgnomeui_module_info_get
    from /usr/lib/libgnomeui-2.so.0
  • #2 __pthread_sighandler
    from /lib/libpthread.so.0
  • #3 ??
  • #0 waitpid
    from /lib/libpthread.so.0

Comment 4 Zsombor G. 2004-04-18 08:57:40 UTC
I found a simpler way to reproduce the crash, however it's still not too exact:

1, open gnome-terminal
2, enter "setxkbmap hu"
3, press "Alt-Left shift" - this will change the keyboard layout to contain some
exotic character, like "æđŁ¶ŧ←"
4, Press fast "rtzrtzrtz..."  or "asdfghj" or "uiopuiop". With little "luck" I
can crash the terminal in seconds.
 ("rtzrtzrtz" maps to ˇ¶ŧ←¶ŧ←¶ŧ←", "asdfghj" maps to "æđĐ[]ħí", and "uiopuiop"
maps to "€Íøþ€Íøþˇ)
Comment 5 Kjartan Maraas 2004-04-18 09:41:08 UTC
I think it fails at point 3 for me. I don't get any exotic chars at all. Do I
need anything special to do this?
Comment 6 Kjartan Maraas 2004-04-18 09:41:46 UTC
Also, if you type 'thread apply all bt' in gdb you'll get backtraces for all
threads which can be worthwhile.
Comment 7 Zsombor G. 2004-04-18 19:59:52 UTC
Ok, I started gnome-terminal from gdb, the following happened :

bash-2.05b$ gdb gnome-terminal
GNU gdb 6.0
Copyright 2003 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(no debugging symbols found)...Using host libthread_db library
"/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/bin/gnome-terminal 
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 6817)]

(gnome-terminal:6817): Gtk-WARNING **: Unable to locate theme engine in
module_path: "industrial",

(gnome-terminal:6817): Gtk-WARNING **: Unable to locate theme engine in
module_path: "industrial",

(gnome-terminal:6817): Gtk-WARNING **: Unable to locate theme engine in
module_path: "industrial",

(process:6817): GLib-CRITICAL (recursed) **: file gstring.c: line 672
(g_string_erase): assertion `pos >= 0' failed
aborting...

Program received signal SIGABRT, Aborted.
[Switching to Thread 16384 (LWP 6817)]
0x40e98001 in kill () from /lib/libc.so.6
Comment 8 Kjartan Maraas 2004-04-19 09:04:56 UTC
Looks like you have problems with your theme setup. Do you get these warnings
using other apps as well?
Comment 9 Zsombor G. 2004-04-19 14:02:04 UTC
Between the crash and the Warning messages the terminal runs fine. Sometimes
it's display warning messages about invalid X keycodes. I will check the theme
setup, but I don't know what problems can it have, because it looks like it's
working :)
Comment 10 Mariano Suárez-Alvarez 2004-04-19 16:28:06 UTC
Messages about invalid X bytecodes are usually a bad sign...
Please try to reproduce this bug with another theme, maybe?

The last stack trace seems to point at glib's 139030, but the output from gdb
seems to be garbled?
Comment 11 Zsombor G. 2004-04-19 19:17:26 UTC
Ok, I changed the theme, but still able to reproduce the crash:


(gnome-terminal:1914): Gtk-WARNING **: Unable to locate theme engine in
module_path: "smooth",

(gnome-terminal:1914): Gtk-WARNING **: Unable to locate theme engine in
module_path: "smooth",

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

** (gnome-terminal:1914): WARNING **: Hiba (Helytelen vagy nem teljes
b\x6ajtsorozat vagy sz\x6cles karakter) t\x72rt\x6ent az adatkonverzi\x20
k\x7azben a gyermek sz\x6dm\x72ra, eldobva.

(process:1914): GLib-CRITICAL (recursed) **: file gstring.c: line 672
(g_string_erase): assertion `pos >= 0' failed
aborting...

Program received signal SIGABRT, Aborted.
[Switching to Thread 16384 (LWP 1914)]
0x40e98001 in kill () from /lib/libc.so.6
Comment 12 Kjartan Maraas 2004-04-20 12:49:30 UTC
You're still using a non-standard theme. Please try Default or Simple or
something like that? How have you installed your GNOME packages? Self compiled
or packages?
Comment 13 Mariano Suárez-Alvarez 2004-04-20 15:19:46 UTC
Also, what encoding are you using in your locale?
Comment 14 Zsombor G. 2004-04-20 18:26:13 UTC
I compiled from source, as a Gentoo package, I use Hungarian locale, If I switch
to Simple theme the crash is still reproducible.

$ set | grep "LANG"
GDM_LANG=hu_HU
LANG=hu_HU
LANGUAGE=hu_HU
Comment 15 Mariano Suárez-Alvarez 2004-04-21 00:14:31 UTC
Hmmm, that does not tell me the locale encoding...

The glib bug I was referring above is triggered by warnings output in any
encoding other that UTF-8 (which are not valid UTF-8) If your encoding is not
UTF-8, then that is probably the cause of this.

You probably have a file called /usr/lib/locale/LC_MESSAGES/SYS_LC_MESSAGES in
your system, which you could attach; that has hopefully the encoding in it (in a
string inside it, but it is a binary file) I don't know of any other way to get
the encoding from the locale in you case, sadly.
Comment 16 Zsombor G. 2004-04-21 07:28:09 UTC
Finally I recompiled my glibc with debug informations, so the stacktrace :

 (gdb) bt
  • #0 kill
    from /lib/libc.so.6
  • #1 pthread_kill
    from /lib/libpthread.so.0
  • #2 raise
    from /lib/libpthread.so.0
  • #3 raise
    from /lib/libc.so.6
  • #4 abort
    from /lib/libc.so.6
  • #5 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #6 g_log
    from /usr/lib/libglib-2.0.so.0
  • #7 g_string_erase
    from /usr/lib/libglib-2.0.so.0
  • #8 _g_debug_init
    from /usr/lib/libglib-2.0.so.0
  • #9 g_log_default_handler
    from /usr/lib/libglib-2.0.so.0
  • #10 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #11 g_log
    from /usr/lib/libglib-2.0.so.0
  • #12 vte_terminal_send
    from /usr/lib/libvte.so.4
  • #13 vte_terminal_feed_child_using_modes
    from /usr/lib/libvte.so.4
  • #14 vte_terminal_im_commit
    from /usr/lib/libvte.so.4
  • #15 g_cclosure_marshal_VOID__STRING
    from /usr/lib/libgobject-2.0.so.0
  • #16 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #17 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #18 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #19 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #20 gtk_im_multicontext_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #21 g_cclosure_marshal_VOID__STRING
    from /usr/lib/libgobject-2.0.so.0
  • #22 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #23 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #24 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #25 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #26 gtk_im_context_simple_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #27 gtk_im_context_simple_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #28 gtk_im_context_simple_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #29 gtk_im_context_filter_keypress
    from /usr/lib/libgtk-x11-2.0.so.0
  • #30 gtk_im_multicontext_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #31 gtk_im_context_filter_keypress
    from /usr/lib/libgtk-x11-2.0.so.0
  • #32 vte_terminal_key_press
    from /usr/lib/libvte.so.4
  • #33 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #34 g_signal_type_cclosure_new
    from /usr/lib/libgobject-2.0.so.0
  • #35 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #36 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #37 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #38 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #39 gtk_widget_send_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #40 gtk_window_propagate_key_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #41 gtk_window_propagate_key_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #42 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #43 g_signal_type_cclosure_new
    from /usr/lib/libgobject-2.0.so.0
  • #44 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #45 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #46 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #47 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #48 gtk_widget_send_expose
    from /usr/lib/libgtk-x11-2.0.so.0
  • #49 gtk_propagate_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #50 gtk_main_do_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #51 _gdk_events_queue
    from /usr/lib/libgdk-x11-2.0.so.0
  • #52 g_idle_remove_by_data
    from /usr/lib/libglib-2.0.so.0
  • #53 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #54 g_idle_remove_by_data
    from /usr/lib/libglib-2.0.so.0
  • #55 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #56 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #57 main

Comment 17 Mariano Suárez-Alvarez 2004-06-22 13:10:35 UTC
Hmm, I had lost this...

Looking at this stack trace it is clear that this is a dup of 139030 by way of
139441.

Thanks for following this up!
Comment 18 Mariano Suárez-Alvarez 2004-06-22 13:10:54 UTC

*** This bug has been marked as a duplicate of 139030 ***