aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2001-09-05 07:12:51 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2001-09-05 07:12:51 +0800
commite68545150a45e7a1eeaacc1b05cb951aeb1bf3c0 (patch)
treeed7f0a152f4fc718b109ffa3cdb249b74a3fe3ab
parent4a0b4b24d0fa8fcb79500a4125fbfcaea9d69e0c (diff)
downloadgsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar
gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.gz
gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.bz2
gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.lz
gsoc2013-evolution-e68545150a45e7a1eeaacc1b05cb951aeb1bf3c0.tar.xz
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
-rw-r--r--shell/ChangeLog10
-rw-r--r--shell/e-shortcuts.c10
2 files changed, 15 insertions, 5 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 38cda220cc..f055c15da3 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,6 +1,14 @@
+2001-09-04 Ettore Perazzoli <ettore@ximian.com>
+
+ [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.
+
2001-09-04 Iain Holmes <iain@ximian.com>
- * e-shell-importer.c (start_importer): Report errors in a dialog
+ * e-shell-importer.c (start_importer): Report errors in a dialog.
2001-09-04 Ettore Perazzoli <ettore@ximian.com>
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;