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 514318 - gnome-terminal crashed with SIGSEGV
gnome-terminal crashed with SIGSEGV
Status: RESOLVED FIXED
Product: gnome-terminal
Classification: Core
Component: general
2.21.x
Other Linux
: Normal critical
: gnome-2-22
Assigned To: GNOME Terminal Maintainers
GNOME Terminal Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-02-04 15:22 UTC by Pedro Villavicencio
Modified: 2008-02-05 18:03 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22


Attachments
disconnect from settings changes on dispose instead of finalize (1.66 KB, patch)
2008-02-04 18:31 UTC, Christian Persch
accepted-commit_now Details | Review

Description Pedro Villavicencio 2008-02-04 15:22:19 UTC
This bug has been reported here:

https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/188565

"#0  0x0806e5f1 in terminal_widget_set_cursor_blinks (widget=0x842fd00, setting=1)
    at terminal-widget-vte.c:300
	__t = <value optimized out>
	__PRETTY_FUNCTION__ = "terminal_widget_set_cursor_blinks"
  • #1 terminal_screen_sync_settings
    at terminal-screen.c line 255
  • #2 IA__g_cclosure_marshal_VOID__PARAM
    at /build/buildd/glib2.0-2.15.4/gobject/gmarshal.c line 531
  • #3 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.15.4/gobject/gclosure.c line 490
  • #4 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.15.4/gobject/gsignal.c line 2440
  • #5 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.15.4/gobject/gsignal.c line 2199
  • #6 IA__g_signal_emit
    at /build/buildd/glib2.0-2.15.4/gobject/gsignal.c line 2243
  • #7 g_object_dispatch_properties_changed
    at /build/buildd/glib2.0-2.15.4/gobject/gobject.c line 563
  • #8 g_object_notify_dispatcher
    at /build/buildd/glib2.0-2.15.4/gobject/gobject.c line 245
  • #9 IA__g_object_notify
    at /build/buildd/glib2.0-2.15.4/gobject/gobjectnotifyqueue.c line 123
  • #10 _gtk_settings_handle_event
    at /build/buildd/gtk+2.0-2.12.7/gtk/gtksettings.c line 1752
  • #11 IA__gtk_main_do_event
    at /build/buildd/gtk+2.0-2.12.7/gtk/gtkmain.c line 1404
  • #12 gdk_event_dispatch
    at /build/buildd/gtk+2.0-2.12.7/gdk/x11/gdkevents-x11.c line 2351
  • #13 IA__g_main_context_dispatch
    at /build/buildd/glib2.0-2.15.4/glib/gmain.c line 2064
  • #14 g_main_context_iterate
    at /build/buildd/glib2.0-2.15.4/glib/gmain.c line 2697
  • #15 IA__g_main_loop_run
    at /build/buildd/glib2.0-2.15.4/glib/gmain.c line 2905
  • #16 IA__gtk_main
    at /build/buildd/gtk+2.0-2.12.7/gtk/gtkmain.c line 1163
  • #17 main
    at terminal.c line 1337
  • #18 __libc_start_main
    from /lib/tls/i686/cmov/libc.so.6
  • #19 _start

Comment 1 Christian Persch 2008-02-04 18:30:32 UTC
line 300 in terminal-widget-vte.c is:
  g_return_if_fail(VTE_IS_TERMINAL(widget));
so maybe the TerminalScreen was already destroyed and thus priv->term invalid ? The following patch might fix it in that case. Behdad?
Comment 2 Christian Persch 2008-02-04 18:31:35 UTC
Created attachment 104419 [details] [review]
disconnect from settings changes on dispose instead of finalize
Comment 3 Behdad Esfahbod 2008-02-04 23:14:51 UTC
Looks good to me.
Comment 4 Christian Persch 2008-02-05 18:03:23 UTC
        * src/terminal-screen.c: (terminal_screen_class_init),
        (terminal_screen_dispose), (terminal_screen_finalize): Disconnect from
        the settings notify on dispose instead of finalise. Possibly fixes the
        crash in bug #514318.

I'll consider this FIXED unless and until we get the same crash again with the version that contains this fix (will be in 2.21.92).