aboutsummaryrefslogtreecommitdiffstats
path: root/shell/evolution-shell-component.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2002-11-06 02:18:42 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2002-11-06 02:18:42 +0800
commit0e595276e5b32beae2a10ad3deb47a802866326f (patch)
treef614933b1030304ca477a75602d0cb2cbd91ca8d /shell/evolution-shell-component.c
parent99c2d72b9971cabfb736e2547f5b57f48fafa354 (diff)
downloadgsoc2013-evolution-0e595276e5b32beae2a10ad3deb47a802866326f.tar.gz
gsoc2013-evolution-0e595276e5b32beae2a10ad3deb47a802866326f.tar.zst
gsoc2013-evolution-0e595276e5b32beae2a10ad3deb47a802866326f.zip
Split finalize/dispose. Likewise. Likewise. Likewise. Likewise. Likewise.
* e-activity-handler.c: Split finalize/dispose. * e-corba-shortcuts.c: Likewise. * e-corba-storage-registry.c: Likewise. * e-shell-about-box.c: Likewise. * e-shell.c: Likewise. * e-splash.c: Likewise. * evolution-config-control.c: Likewise. * evolution-session.c: Likewise. * evolution-shell-component.c: Likewise. * evolution-shell-view.c: Likewise. * evolution-storage-set-view.c: Likewise. * evolution-storage.c: Likewise. * evolution-wizard.c: Likewise. svn path=/trunk/; revision=18556
Diffstat (limited to 'shell/evolution-shell-component.c')
-rw-r--r--shell/evolution-shell-component.c31
1 files changed, 21 insertions, 10 deletions
diff --git a/shell/evolution-shell-component.c b/shell/evolution-shell-component.c
index 8a757b0219..d6392a08bb 100644
--- a/shell/evolution-shell-component.c
+++ b/shell/evolution-shell-component.c
@@ -755,13 +755,10 @@ impl_requestQuit (PortableServer_Servant servant,
/* GObject methods. */
static void
-impl_finalize (GObject *object)
+impl_dispose (GObject *object)
{
EvolutionShellComponent *shell_component;
EvolutionShellComponentPrivate *priv;
- CORBA_Environment ev;
- GSList *sp;
- GList *p;
shell_component = EVOLUTION_SHELL_COMPONENT (object);
@@ -772,14 +769,30 @@ impl_finalize (GObject *object)
priv->ping_timeout_id = -1;
}
- CORBA_exception_init (&ev);
-
if (priv->owner_client != NULL) {
g_object_unref (priv->owner_client);
priv->owner_client = NULL;
}
- CORBA_exception_free (&ev);
+ if (priv->uic != NULL) {
+ bonobo_object_unref (BONOBO_OBJECT (priv->uic));
+ priv->uic = NULL;
+ }
+
+ (* G_OBJECT_CLASS (parent_class)->dispose) (object);
+}
+
+static void
+impl_finalize (GObject *object)
+{
+ EvolutionShellComponent *shell_component;
+ EvolutionShellComponentPrivate *priv;
+ GSList *sp;
+ GList *p;
+
+ shell_component = EVOLUTION_SHELL_COMPONENT (object);
+
+ priv = shell_component->priv;
for (p = priv->folder_types; p != NULL; p = p->next) {
EvolutionShellComponentFolderType *folder_type;
@@ -801,9 +814,6 @@ impl_finalize (GObject *object)
user_creatable_item_type_free ((UserCreatableItemType *) sp->data);
g_slist_free (priv->user_creatable_item_types);
- if (priv->uic != NULL)
- bonobo_object_unref (BONOBO_OBJECT (priv->uic));
-
g_free (priv);
(* G_OBJECT_CLASS (parent_class)->finalize) (object);
@@ -857,6 +867,7 @@ class_init (EvolutionShellComponentClass *klass)
POA_GNOME_Evolution_ShellComponent__epv *epv = &klass->epv;
object_class = G_OBJECT_CLASS (klass);
+ object_class->dispose = impl_dispose;
object_class->finalize = impl_finalize;
signals[OWNER_SET]