diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2001-09-05 07:12:51 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2001-09-05 07:12:51 +0800 |
commit | e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0 (patch) | |
tree | ed7f0a152f4fc718b109ffa3cdb249b74a3fe3ab /shell/e-shortcuts.c | |
parent | 4a0b4b24d0fa8fcb79500a4125fbfcaea9d69e0c (diff) | |
download | gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.gz gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.zst gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.zip |
[Fix ^#7675, Crashes trying to empty trash folder.]
* e-shortcuts.c (e_shortcuts_construct): Use
`gtk_signal_connect_while_alive()' so we don't invoke the
callbacks on dead EShortcuts objects.
svn path=/trunk/; revision=12612
Diffstat (limited to 'shell/e-shortcuts.c')
-rw-r--r-- | shell/e-shortcuts.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/shell/e-shortcuts.c b/shell/e-shortcuts.c index 1f8f47b5a8..9098fded60 100644 --- a/shell/e-shortcuts.c +++ b/shell/e-shortcuts.c @@ -756,10 +756,12 @@ e_shortcuts_construct (EShortcuts *shortcuts, gtk_object_ref (GTK_OBJECT (storage_set)); priv->storage_set = storage_set; - gtk_signal_connect (GTK_OBJECT (storage_set), "new_folder", - GTK_SIGNAL_FUNC (storage_set_new_folder_callback), shortcuts); - gtk_signal_connect (GTK_OBJECT (storage_set), "updated_folder", - GTK_SIGNAL_FUNC (storage_set_updated_folder_callback), shortcuts); + gtk_signal_connect_while_alive (GTK_OBJECT (storage_set), "new_folder", + GTK_SIGNAL_FUNC (storage_set_new_folder_callback), + shortcuts, GTK_OBJECT (shortcuts)); + gtk_signal_connect_while_alive (GTK_OBJECT (storage_set), "updated_folder", + GTK_SIGNAL_FUNC (storage_set_updated_folder_callback), + shortcuts, GTK_OBJECT (shortcuts)); gtk_object_ref (GTK_OBJECT (folder_type_registry)); priv->folder_type_registry = folder_type_registry; |