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 631840 - Crash in GcrCertificateWidget
Crash in GcrCertificateWidget
Status: RESOLVED FIXED
Product: gnome-keyring
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME keyring maintainer(s)
GNOME keyring maintainer(s)
Depends on:
Blocks: 631657
 
 
Reported: 2010-10-10 23:16 UTC by Danielle Madeley
Modified: 2010-10-11 00:54 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Danielle Madeley 2010-10-10 23:16:41 UTC
Ported Empathy to use GcrCertificateWidget (bug #631657), but it crashes when you dispose the dialog.

(empathy-auth-client:25868): Gtk-CRITICAL **: gtk_text_buffer_get_tag_table: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed

(empathy-auth-client:25868): Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion `GTK_IS_TEXT_TAG_TABLE (table)' failed

(empathy-auth-client:25868): Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion `GTK_IS_TEXT_TAG_TABLE (table)' failed

(empathy-auth-client:25868): Gtk-CRITICAL **: gtk_text_buffer_delete_mark: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed

(empathy-auth-client:25868): Gtk-CRITICAL **: gtk_text_buffer_delete_mark: assertion `GTK_IS_TEXT_BUFFER (buffer)' failed
**
Gtk:ERROR:gtktextview.c:3046:gtk_text_view_finalize: assertion failed: (priv->buffer == NULL)

Program received signal SIGABRT, Aborted.
0x0012d422 in __kernel_vsyscall ()
(gdb) bt
  • #0 __kernel_vsyscall
  • #1 *__GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 64
  • #2 *__GI_abort
    at abort.c line 92
  • #3 g_assertion_message
  • #4 g_assertion_message_expr
    at gtestutils.c line 1369
  • #5 gtk_text_view_finalize
    at gtktextview.c line 3046
  • #6 _gcr_display_view_dispose
    at gcr-display-view.c line 366
  • #7 g_object_run_dispose
    at gobject.c line 935
  • #8 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #9 gtk_bin_forall
    at gtkbin.c line 174
  • #10 gtk_scrolled_window_forall
    at gtkscrolledwindow.c line 1149
  • #11 gtk_container_foreach
    at gtkcontainer.c line 1685
  • #12 gtk_container_destroy
    at gtkcontainer.c line 1104
  • #13 gtk_scrolled_window_destroy
    at gtkscrolledwindow.c line 937
  • #14 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #15 g_type_class_meta_marshal
    at gclosure.c line 877
  • #16 g_closure_invoke
    at gclosure.c line 766
  • #17 signal_emit_unlocked_R
    at gsignal.c line 3368
  • #18 g_signal_emit_valist
    at gsignal.c line 2983
  • #19 g_signal_emit
    at gsignal.c line 3040
  • #20 gtk_widget_dispose
    at gtkwidget.c line 9515
  • #21 g_object_run_dispose
    at gobject.c line 935
  • #22 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #23 gtk_bin_forall
    at gtkbin.c line 174
  • #24 gtk_container_foreach
    at gtkcontainer.c line 1685
  • #25 gtk_container_destroy
    at gtkcontainer.c line 1104
  • #26 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #27 g_type_class_meta_marshal
    at gclosure.c line 877
  • #28 g_closure_invoke
    at gclosure.c line 766
  • #29 signal_emit_unlocked_R
    at gsignal.c line 3368
  • #30 g_signal_emit_valist
    at gsignal.c line 2983
  • #31 g_signal_emit
    at gsignal.c line 3040
  • #32 gtk_widget_dispose
    at gtkwidget.c line 9515
  • #33 g_object_run_dispose
    at gobject.c line 935
  • #34 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #35 gtk_expander_forall
    at gtkexpander.c line 1258
  • #36 gtk_container_foreach
    at gtkcontainer.c line 1685
  • #37 gtk_container_destroy
    at gtkcontainer.c line 1104
  • #38 gtk_expander_destroy
    at gtkexpander.c line 423
  • #39 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #40 g_type_class_meta_marshal
    at gclosure.c line 877
  • #41 g_closure_invoke
    at gclosure.c line 766
  • #42 signal_emit_unlocked_R
    at gsignal.c line 3368
  • #43 g_signal_emit_valist
    at gsignal.c line 2983
  • #44 g_signal_emit
    at gsignal.c line 3040
  • #45 gtk_widget_dispose
    at gtkwidget.c line 9515
  • #46 g_object_run_dispose
    at gobject.c line 935
  • #47 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #48 gtk_box_forall
    at gtkbox.c line 1648
  • #49 gtk_container_foreach
    at gtkcontainer.c line 1685
  • #50 gtk_container_destroy
    at gtkcontainer.c line 1104
  • #51 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #52 g_type_class_meta_marshal
    at gclosure.c line 877
  • #53 g_closure_invoke
    at gclosure.c line 766
  • #54 signal_emit_unlocked_R
    at gsignal.c line 3368
  • #55 g_signal_emit_valist
    at gsignal.c line 2983
  • #56 g_signal_emit
    at gsignal.c line 3040
  • #57 gtk_widget_dispose
    at gtkwidget.c line 9515
  • #58 g_object_run_dispose
    at gobject.c line 935
  • #59 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #60 gtk_bin_forall
    at gtkbin.c line 174
  • #61 gtk_container_foreach
    at gtkcontainer.c line 1685
  • #62 gtk_container_destroy
    at gtkcontainer.c line 1104
  • #63 gtk_window_destroy
    at gtkwindow.c line 4410
  • #64 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #65 g_type_class_meta_marshal
    at gclosure.c line 877
  • #66 g_closure_invoke
    at gclosure.c line 766
  • #67 signal_emit_unlocked_R
    at gsignal.c line 3368
  • #68 g_signal_emit_valist
    at gsignal.c line 2983
  • #69 g_signal_emit
    at gsignal.c line 3040
  • #70 gtk_widget_dispose
    at gtkwidget.c line 9515
  • #71 gtk_window_dispose
    at gtkwindow.c line 2342
  • #72 empathy_tls_dialog_dispose
    at empathy-tls-dialog.c line 124
  • #73 g_object_run_dispose
    at gobject.c line 935
  • #74 gtk_widget_destroy
    at gtkwidget.c line 3600
  • #75 tls_dialog_response_cb
    at empathy-auth-client.c line 103
  • #76 g_cclosure_marshal_VOID__INT
    at gmarshal.c line 218
  • #77 g_closure_invoke
    at gclosure.c line 766
  • #78 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #79 g_signal_emit_valist
    at gsignal.c line 2983
  • #80 g_signal_emit
    at gsignal.c line 3040
  • #81 gtk_dialog_response
    at gtkdialog.c line 809
  • #82 action_widget_activated
    at gtkdialog.c line 562
  • #83 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #84 g_closure_invoke
    at gclosure.c line 766
  • #85 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #86 g_signal_emit_valist
    at gsignal.c line 2983
  • #87 g_signal_emit
    at gsignal.c line 3040
  • #88 gtk_button_clicked
    at gtkbutton.c line 1200
  • #89 gtk_real_button_released
    at gtkbutton.c line 1798
  • #90 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 79
  • #91 g_type_class_meta_marshal
    at gclosure.c line 877
  • #92 g_closure_invoke
    at gclosure.c line 766
  • #93 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #94 g_signal_emit_valist
    at gsignal.c line 2983
  • #95 g_signal_emit
    at gsignal.c line 3040
  • #96 gtk_button_released
    at gtkbutton.c line 1186
  • #97 gtk_button_button_release
    at gtkbutton.c line 1690
  • #98 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 85
  • #99 g_type_class_meta_marshal
    at gclosure.c line 877
  • #100 g_closure_invoke
    at gclosure.c line 766
  • #101 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #102 g_signal_emit_valist
    at gsignal.c line 2993
  • #103 g_signal_emit
    at gsignal.c line 3040
  • #104 gtk_widget_event_internal
    at gtkwidget.c line 5702
  • #105 gtk_widget_event
    at gtkwidget.c line 5412
  • #106 gtk_propagate_event
    at gtkmain.c line 2539
  • #107 gtk_main_do_event
    at gtkmain.c line 1752
  • #108 gdk_event_source_dispatch
    at gdkeventsource.c line 302
  • #109 g_main_dispatch
    at gmain.c line 2149
  • #110 g_main_context_dispatch
    at gmain.c line 2702
  • #111 g_main_context_iterate
    at gmain.c line 2780
  • #112 g_main_loop_run
    at gmain.c line 2988
  • #113 gtk_main
    at gtkmain.c line 1320
  • #114 main
    at empathy-auth-client.c line 263

Comment 1 Stef Walter 2010-10-11 00:39:12 UTC
Thanks for catching that. Should now be fixed in master:

commit d0e3e29eed47286fe163c0a7ea03efefa7a95839
Author: Stef Walter <stef@memberwebs.com>
Date:   Mon Oct 11 00:37:24 2010 +0000

    [gcr] Fix broken dispose of GcrCertificateWidget
    
    Dispose and finalize of the gcr widgets was broken.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=631840
Comment 2 Danielle Madeley 2010-10-11 00:54:05 UTC
Did you forget to git push?