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 363589 - Gedit crash after close it
Gedit crash after close it
Status: RESOLVED DUPLICATE of bug 363596
Product: gedit
Classification: Applications
Component: general
2.16.x
Other opensolaris
: Normal critical
: ---
Assigned To: Gedit maintainers
Gedit maintainers
Depends on:
Blocks:
 
 
Reported: 2006-10-20 07:58 UTC by Patrick
Modified: 2006-10-31 14:36 UTC
See Also:
GNOME target: ---
GNOME version: 2.15/2.16



Description Patrick 2006-10-20 07:58:20 UTC
Opensolaris build 51(vermillion), gnome 2.16

Steps:
1. start Gedit and close it

Actual results:
Gedit crash:
1705:   gedit
 d2768df5 waitid   (0, 6aa, 80456b0, 3)
 d275c03d waitpid  (6aa, 80457c4, 0) + 97
 cfbb1072 libgnomeui_segv_handle (b, 0, 8045868) + ba
 d276747f __sighndlr (b, 0, 8045868, cfbb0fb8) + f
 d275ccab call_user_handler (b, 0, 8045868) + 2b8
 d275ce52 sigacthandler (b, 0, 8045868) + c2
 --- called from signal handler with signal 11 (SIGSEGV) ---
 d26f5510 strlen   (d1e6fe35, 8046dac, 8046840, 0) + 30
 d2736950 vsnprintf (8046890, 1, d1e6fe14, 8046dac) + 70
 d1dc8967 g_printf_string_upper_bound (d1e6fe14, 8046dac) + 27
 d1de683b g_vasprintf (80468f0, d1e6fe14, 8046dac) + 2f
 d1dd6822 g_strdup_vprintf (d1e6fe14, 8046dac) + 2a
 d1dc7bf7 g_logv   (d1e715d4, 10, d1e6fe14, 8046dac) + 26b
 d1dc7cd9 g_log    (d1e715d4, 10, d1e6fe14, 0, 80c79b0) + 25
 d1e662ae g_type_check_instance_cast (823b558, 823bde0) + de
1705:   gedit
 d2768df5 waitid   (0, 6aa, 80456b0, 3)
 d275c03d waitpid  (6aa, 80457c4, 0) + 97
 cfbb1072 libgnomeui_segv_handle (b, 0, 8045868) + ba
 d276747f __sighndlr (b, 0, 8045868, cfbb0fb8) + f
 d275ccab call_user_handler (b, 0, 8045868) + 2b8
 d275ce52 sigacthandler (b, 0, 8045868) + c2
 --- called from signal handler with signal 11 (SIGSEGV) ---
 d26f5510 strlen   (d1e6fe35, 8046dac, 8046840, 0) + 30
 d2736950 vsnprintf (8046890, 1, d1e6fe14, 8046dac) + 70
 d1dc8967 g_printf_string_upper_bound (d1e6fe14, 8046dac) + 27
 d1de683b g_vasprintf (80468f0, d1e6fe14, 8046dac) + 2f
 d1dd6822 g_strdup_vprintf (d1e6fe14, 8046dac) + 2a
 d1dc7bf7 g_logv   (d1e715d4, 10, d1e6fe14, 8046dac) + 26b
 d1dc7cd9 g_log    (d1e715d4, 10, d1e6fe14, 0, 80c79b0) + 25
 d1e662ae g_type_check_instance_cast (823b558, 823bde0) + de
 080908b5 gedit_window_destroy (81a3000, 80e8c78) + 9d
 d1e5e7f1 g_cclosure_marshal_VOID__VOID (80e95f0, 0, 1, 8046fac, 8046f0c, 809081
8) + 55
 d1e4a6fc g_type_class_meta_marshal (80e95f0, 0, 1, 8046fac, 8046f0c, 4c) + 40
 d1e4a41b g_closure_invoke (80e95f0, 0, 1, 8046fac, 8046f0c) + 107
 d1e5e5d4 signal_emit_unlocked_R (80e9b18, 0, 81a3000, 0, 8046fac) + ca4
 d1e5d388 g_signal_emit_valist (81a3000, 2, 0, 8047218) + 8c4
 d1e5d51d g_signal_emit (81a3000, 2, 0) + 25
 d20701c1 gtk_object_dispose (81a3000) + 35
 d215768f gtk_widget_dispose (81a3000) + 67
 d215ba99 gtk_window_dispose (81a3000) + 39
 080907b6 gedit_window_dispose (81a3000) + c2
 d1e50276 g_object_unref (81a3000) + 9a
 cec6690f pygobject_clear (84ccedc) + 13b
 d2651d09 delete_garbage (8047348, d269b3a8) + 45
 d2651f22 collect  (2) + 1be
 d26524f4 PyGC_Collect (80d9c70, 807db60, 10, 80bd5ec, 80473cc, 807db68) + 24
 0809acea gedit_python_shutdown (81a3000, 80e6028, 80ba0ec, 806fab5, 81762e0, 80
e6028) + 3e
 0807db68 gedit_plugins_engine_shutdown (8047510, 80473e8, d27fb7c0, 133f, 1f80,
 80473e8) + 40
 0806f347 main     (1, 804742c, 8047434) + 4ab
 0806e6fe _start   (1, 8047578, 0, 804757e, 80475b2, 80475c4) + 7a
Comment 1 padraig.obriain 2006-10-26 08:08:49 UTC
I see this bug on version 2.16.1 on Solaris everytime I close gedit window.
The stack trace is the same as above.

As far as I can make oout the crash is on the line
pane_page = _gedit_panel_get_active_item_id (GEDIT_PANEL (window->priv->side_panel)).

The real problem seems to be that gedit_window_destroy has already been called for this window:

 08097f6f gedit_window_destroy (8196070, 80f0558) + 3b
 fe5ce7f1 g_cclosure_marshal_VOID__VOID (80f0ef0, 0, 1, 804602c, 8045f8c, 8097f34) + 55
 fe5ba6fc g_type_class_meta_marshal (80f0ef0, 0, 1, 804602c, 8045f8c, 4c) + 40
 fe5ba41b g_closure_invoke (80f0ef0, 0, 1, 804602c, 8045f8c) + 107
 fe5ce5d4 signal_emit_unlocked_R (80f06e0, 0, 8196070, 0, 804602c) + ca4
 fe5cd388 g_signal_emit_valist (8196070, 2, 0, 8046298) + 8c4
 fe5cd51d g_signal_emit (8196070, 2, 0) + 25
 fe77b621 gtk_object_dispose (8196070) + 35
 fe862b03 gtk_widget_dispose (8196070) + 67
 fe866f0d gtk_window_dispose (8196070) + 39
 08097ed2 gedit_window_dispose (8196070, 8196070, fe945e68, 0, 8046348, 804634c) + c2
 fe5bc48d g_object_run_dispose (8196070) + 3d
 fe77b588 gtk_object_destroy (8196070) + 3c
 fe85c834 gtk_widget_destroy (8196070) + 30
 0807aeea file_close_all (8196070, 1) + 1a2
 0807afde _gedit_cmd_file_quit (0, 8196070) + 4e
 080776dd window_delete_event (8196070, 822b698, 8184400) + 2d
 fe75cca8 _gtk_marshal_BOOLEAN__BOXED (8477408, 80464a0, 2, 804655c, 80464bc, 0) + 70
 fe5ba41b g_closure_invoke (8477408, 80464a0, 2, 804655c, 80464bc) + 107
 fe5ce076 signal_emit_unlocked_R (818de48, 0, 8196070, 80466dc, 804655c) + 746
 fe5cd126 g_signal_emit_valist (8196070, 31, 0, 80467d0) + 662
 fe5cd51d g_signal_emit (8196070, 31, 0, 822b698, 80467f4) + 25
 fe85ecbf gtk_widget_event_internal (8196070, 822b698) + 20f
 fe85e951 gtk_widget_event (8196070, 822b698) + 99
 fe75aa74 gtk_main_do_event (822b698, 0) + 498
 fe9dea8e gdk_event_dispatch (8108b98, 0, 0) + 56
 fe5301f5 g_main_dispatch (8108be0) + 1d9
 fe5312e5 g_main_context_dispatch (8108be0) + 85
 fe531702 g_main_context_iterate (8108be0, 1, 1, 80ec1d0) + 3ce
 fe531d04 g_main_loop_run (8654940) + 1b8
 fe75a2ba gtk_main (8046b70, 80469f4, feffa7c0, 133f, 1f80, 80469f4) + b2
 08076a50 main     (1, 8046a38, 8046a40) + 498
 08075e1a _start   (1, 8046bd8, 0, 8046c31, 8046c43, 8046c5c) + 7a

Comment 2 padraig.obriain 2006-10-26 08:49:34 UTC
I tried changing gtk_widget_desstroy (GTK_WIDGET (window)) in file_close_all to a call to g_object_unref. It no longer crashed but I got warning messages:

sys:1: Warning: instance with invalid (NULL) class pointer
sys:1: Warning: file signal.c: line 1767: assertion G_TYPE_CHECK_INSTANCE (instance) failed

These seem to occur during python garbage collection
Comment 3 Paolo Borelli 2006-10-26 22:28:28 UTC
This one should be fixed in cvs HEAD, feel free to backport the patch in the solaris package or wait for 2.16.2... on linux the warnings are not fatal, so we didn't release a new version immediately

*** This bug has been marked as a duplicate of 363596 ***
Comment 4 padraig.obriain 2006-10-31 14:36:58 UTC
The problem no longer occurs for me on Solaris using the gedit 2.16.2 tarball.