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 122687 - cannot create a profile when more than 8 locale characters are used as filename
cannot create a profile when more than 8 locale characters are used as filename
Status: RESOLVED FIXED
Product: gnome-terminal
Classification: Core
Component: general
2.3.x
Other Solaris
: Normal normal
: ---
Assigned To: GNOME Terminal Maintainers
GNOME Terminal Maintainers
Depends on:
Blocks:
 
 
Reported: 2003-09-19 01:00 UTC by Hidetoshi Tajima
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Hidetoshi Tajima 2003-09-19 01:14:04 UTC
Distribution:                          Solaris 9 8/03 s9x_u4wos_08b x86
Package: gnome-terminal
Severity: minor
Version: GNOME2.3.90 unspecified
Gnome-Distributor: GNOME.Org
Synopsis: cannot create a profile when more than 8 locale characters are used as filename
Bugzilla-Product: gnome-terminal
Bugzilla-Component: general
Bugzilla-Version: unspecified
Description:
Description of Problem:

 When inputting 8 or more locale's characters for profile name,
gnome-terminal
gets crashed and says filename is too long at stderr.




------- Bug moved to this database by unknown@bugzilla.gnome.org 2003-09-18 20:59 -------

Reassigning to the default owner of the component, gnome-terminal-maint@bugzilla.gnome.org.

Comment 1 Mariano Suárez-Alvarez 2003-09-22 10:38:55 UTC
By `locale characters' you mean non ASCII chars?
Can you tell us what was the profile name you had problems with?
And, if this is repeatable, could you obtain a stack trace?

See http://bugzilla.gnome.org/getting-traces.cgi for more information
about getting a useful stack trace.
Comment 2 Hidetoshi Tajima 2003-09-22 16:59:33 UTC
This crash will be reproducible as follows:

   1. Run a gnome-terminal.
   2. Edit->Profiles...->New
   3. On a text entry, click right-mouse.
      and change Input Methods to "Hangul(KSC 5601)"
   4. Input any 8 or more hangul characters, and "Create".

When you use Korean, Chinese, or Japanese characters, it
needs to input 8 characters, but when you European characters such as
Latin-1 or Cyrillic, it needs 12 characters to reproduce the crash.
Comment 3 Mariano Suárez-Alvarez 2003-09-22 17:05:17 UTC
Indeed. I can reproduce that.

Trying to create a profile named áááááááá, I get this on stderr:

GConf warning: failure listing pairs in
`/apps/gnome-terminal/profiles/@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@':
Failed:
 Failed:
 Could not stat
`/home/mariano/.gconf/apps/gnome-terminal/profiles/@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@@4294967235@@4294967201@/20.9196conf.xml':
Nom de fichier trop long
** ERROR **: file terminal.c: line 2181
(new_profile_response_callback): assertion failed: (new_profile != NULL)
aborting...

The stack at the time is:

Backtrace was generated from '/opt/gnome/bin/gnome-terminal'

[New Thread 16384 (LWP 19580)]
0x40e5bf29 in wait4 () from /lib/libc.so.6

Thread 1 (Thread 16384 (LWP 19580))

  • #0 wait4
    from /lib/libc.so.6
  • #1 __DTOR_END__
    from /lib/libc.so.6
  • #2 waitpid
    from /lib/libpthread.so.0
  • #3 libgnomeui_module_info_get
    from /opt/gnome/lib/libgnomeui-2.so.0
  • #4 __pthread_sighandler
    from /lib/libpthread.so.0
  • #5 <signal handler called>
  • #6 kill
    from /lib/libc.so.6
  • #7 pthread_kill
    from /lib/libpthread.so.0
  • #8 raise
    from /lib/libpthread.so.0
  • #9 abort
    from /lib/libc.so.6
  • #10 g_logv
    from /opt/gnome/lib/libglib-2.0.so.0
  • #11 g_log
    from /opt/gnome/lib/libglib-2.0.so.0
  • #12 new_profile_response_callback
    at terminal.c line 2186
  • #13 g_cclosure_marshal_VOID
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #14 g_closure_invoke
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #15 signal_emit_unlocked_R
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #16 g_signal_emit_valist
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #17 g_signal_emit
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #18 gtk_dialog_response
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #19 action_widget_activated
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #20 g_cclosure_marshal_VOID__VOID
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #21 g_closure_invoke
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #22 signal_emit_unlocked_R
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #23 g_signal_emit_valist
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #24 g_signal_emit
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #25 gtk_button_clicked
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #26 gtk_real_button_released
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #27 g_cclosure_marshal_VOID__VOID
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #28 g_type_class_meta_marshal
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #29 g_closure_invoke
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #30 signal_emit_unlocked_R
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #31 g_signal_emit_valist
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #32 g_signal_emit
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #33 gtk_button_released
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #34 gtk_button_button_release
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #35 _gtk_marshal_BOOLEAN__BOXED
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #36 g_type_class_meta_marshal
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #37 g_closure_invoke
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #38 signal_emit_unlocked_R
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #39 g_signal_emit_valist
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #40 g_signal_emit
    from /opt/gnome/lib/libgobject-2.0.so.0
  • #41 gtk_widget_event_internal
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #42 gtk_widget_event
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #43 gtk_propagate_event
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #44 gtk_main_do_event
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #45 gdk_event_dispatch
    from /opt/gnome/lib/libgdk-x11-2.0.so.0
  • #46 g_main_dispatch
    from /opt/gnome/lib/libglib-2.0.so.0
  • #47 g_main_context_dispatch
    from /opt/gnome/lib/libglib-2.0.so.0
  • #48 g_main_context_iterate
    from /opt/gnome/lib/libglib-2.0.so.0
  • #49 g_main_loop_run
    from /opt/gnome/lib/libglib-2.0.so.0
  • #50 gtk_main
    from /opt/gnome/lib/libgtk-x11-2.0.so.0
  • #51 main
    at terminal.c line 1588
  • #52 __libc_start_main
    from /lib/libc.so.6
  • #0 wait4
    from /lib/libc.so.6

                                                                     
                                                              
Comment 4 Mariano Suárez-Alvarez 2003-09-22 17:31:14 UTC
The (root of the) problem lays in gconf's escaping mechanism, which
translates á into @4294967235@@4294967201@. Twelve ás then end up in a
directory name which is too long for something; 8 Hangul characters
are enough to trigger the problem because their UTF-8 encoding is
longer than 2 bytes.

I'll open a bug on gconf, but keep this, as gnome-terminal should
probably handle this more gracefully.
Comment 5 Mariano Suárez-Alvarez 2004-02-23 17:49:23 UTC
The gconf bug is 122958
Comment 6 Mariano Suárez-Alvarez 2004-11-01 00:15:35 UTC
I added a check for errors after creating with an error dialog instead of the
assertion we had before, just in case anything evil happens in the future.
gconf has been fixed, though.

Thanks!