aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-local.c
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2003-05-15 02:47:11 +0800
committerJP Rosevear <jpr@src.gnome.org>2003-05-15 02:47:11 +0800
commit946d755adc6d2d7c1163e2993293a099651b0af7 (patch)
tree5f4d8593e408e3becf0d8a79d34ab3e869c6d552 /mail/mail-local.c
parent352d3c7d3b080850f4fc81b502a0f0b0d3c2369d (diff)
downloadgsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar.gz
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar.bz2
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar.lz
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar.xz
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.tar.zst
gsoc2013-evolution-946d755adc6d2d7c1163e2993293a099651b0af7.zip
add proto
2003-05-14 JP Rosevear <jpr@ximian.com> * mail-local.h: add proto * mail-local.c (storage_listener_startup): don't listen for destruction, because we have a ref and it'll never happen (mail_local_storage_shutdown): release and unref the local storage * mail-display.c (retrieve_shell_view_interface_from_control): return a new copy every time (set_status_message): release and unref the shell view * folder-browser.c (folder_browser_destroy): guard for multiple destroys * folder-browser-factory.c (control_activate): release and unref the shell view (control_destroy_cb): just remove the control from the list (folder_browser_factory_new_control): don't weak ref the folder browser * component-factory.c (owner_unset_cb): shutdown local storage svn path=/trunk/; revision=21181
Diffstat (limited to 'mail/mail-local.c')
-rw-r--r--mail/mail-local.c24
1 files changed, 7 insertions, 17 deletions
diff --git a/mail/mail-local.c b/mail/mail-local.c
index cbec89d89e..bf0271afb9 100644
--- a/mail/mail-local.c
+++ b/mail/mail-local.c
@@ -1143,18 +1143,6 @@ mail_local_provider_init (void)
/* ** Local Storage Listener ****************************************************** */
static void
-local_storage_destroyed_cb (EvolutionStorageListener *storage_listener,
- void *data)
-{
- CORBA_Environment ev;
-
- CORBA_exception_init (&ev);
- bonobo_object_release_unref (data, &ev);
- CORBA_exception_free (&ev);
-}
-
-
-static void
local_storage_new_folder_cb (EvolutionStorageListener *storage_listener,
const char *path,
const GNOME_Evolution_Folder *folder,
@@ -1232,11 +1220,6 @@ storage_listener_startup (EvolutionShellClient *shellclient)
corba_local_storage_listener = evolution_storage_listener_corba_objref (
local_storage_listener);
- /* FIXME: is this supposed to be destroy? */
- g_signal_connect(local_storage_listener,
- "destroyed",
- G_CALLBACK (local_storage_destroyed_cb),
- corba_storage);
g_signal_connect(local_storage_listener,
"new_folder",
G_CALLBACK (local_storage_new_folder_cb),
@@ -1274,6 +1257,13 @@ mail_local_storage_startup (EvolutionShellClient *shellclient, const char *evolu
storage_listener_startup (shellclient);
}
+void
+mail_local_storage_shutdown (void)
+{
+ bonobo_object_release_unref (local_corba_storage, NULL);
+ local_corba_storage = CORBA_OBJECT_NIL;
+}
+
/*----------------------------------------------------------------------
* Local folder reconfiguration stuff