diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2002-11-06 02:18:42 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2002-11-06 02:18:42 +0800 |
commit | 0e595276e5b32beae2a10ad3deb47a802866326f (patch) | |
tree | f614933b1030304ca477a75602d0cb2cbd91ca8d /shell/e-splash.c | |
parent | 99c2d72b9971cabfb736e2547f5b57f48fafa354 (diff) | |
download | gsoc2013-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/e-splash.c')
-rw-r--r-- | shell/e-splash.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/shell/e-splash.c b/shell/e-splash.c index c2112eb3af..f56cf7c4e8 100644 --- a/shell/e-splash.c +++ b/shell/e-splash.c @@ -210,17 +210,36 @@ schedule_relayout (ESplash *splash) /* GObject methods. */ static void -impl_finalize (GObject *object) +impl_dispose (GObject *object) { ESplash *splash; ESplashPrivate *priv; - GList *p; splash = E_SPLASH (object); priv = splash->priv; - if (priv->splash_image_pixbuf != NULL) + if (priv->splash_image_pixbuf != NULL) { gdk_pixbuf_unref (priv->splash_image_pixbuf); + priv->splash_image_pixbuf = NULL; + } + + if (priv->layout_idle_id != 0) { + gtk_idle_remove (priv->layout_idle_id); + priv->layout_idle_id = 0; + } + + (* G_OBJECT_CLASS (parent_class)->dispose) (object); +} + +static void +impl_finalize (GObject *object) +{ + ESplash *splash; + ESplashPrivate *priv; + GList *p; + + splash = E_SPLASH (object); + priv = splash->priv; for (p = priv->icons; p != NULL; p = p->next) { Icon *icon; @@ -231,9 +250,6 @@ impl_finalize (GObject *object) g_list_free (priv->icons); - if (priv->layout_idle_id != 0) - gtk_idle_remove (priv->layout_idle_id); - g_free (priv); (* G_OBJECT_CLASS (parent_class)->finalize) (object); @@ -246,6 +262,7 @@ class_init (ESplashClass *klass) GObjectClass *object_class; object_class = G_OBJECT_CLASS (klass); + object_class->dispose = impl_dispose; object_class->finalize = impl_finalize; parent_class = gtk_type_class (gtk_window_get_type ()); |