aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--shell/ChangeLog5
-rw-r--r--shell/e-shell.c8
2 files changed, 10 insertions, 3 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index e61a302150..2946f23bdf 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,5 +1,10 @@
2001-08-19 Ettore Perazzoli <ettore@ximian.com>
+ * e-shell.c (destroy): Put the bonobo_object_release_unref() for
+ the db at the top in an attempt to fix #7542.
+
+2001-08-19 Ettore Perazzoli <ettore@ximian.com>
+
* e-summary-storage.c (e_summary_storage_new): Change type of
toplevel node from "Summary" to "summary". [All the other folder
types use lowercase names.]
diff --git a/shell/e-shell.c b/shell/e-shell.c
index 357236ba7f..26f5f6fb78 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -704,6 +704,11 @@ destroy (GtkObject *object)
shell = E_SHELL (object);
priv = shell->priv;
+ if (shell->priv->db != CORBA_OBJECT_NIL) {
+ bonobo_object_release_unref (shell->priv->db, NULL);
+ shell->priv->db = CORBA_OBJECT_NIL;
+ }
+
if (priv->iid != NULL)
oaf_active_server_unregister (priv->iid, bonobo_object_corba_objref (BONOBO_OBJECT (shell)));
@@ -750,9 +755,6 @@ destroy (GtkObject *object)
g_list_free (priv->views);
- if (shell->priv->db != CORBA_OBJECT_NIL)
- bonobo_object_release_unref (shell->priv->db, NULL);
-
/* No unreffing for these as they are aggregate. */
/* bonobo_object_unref (BONOBO_OBJECT (priv->corba_storage_registry)); */
/* bonobo_object_unref (BONOBO_OBJECT (priv->activity_handler)); */