diff options
author | Matthew Loper <mloper@src.gnome.org> | 2000-04-08 05:42:56 +0800 |
---|---|---|
committer | Matthew Loper <mloper@src.gnome.org> | 2000-04-08 05:42:56 +0800 |
commit | 59606c28498271b7e0d3734f9b094bee3fc10cf8 (patch) | |
tree | 3a1394611fd756784d32449927ccede0d8af6d15 /mail/folder-browser.c | |
parent | c893285da76dca4a43ace7819964f09ce8802882 (diff) | |
download | gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar.gz gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar.bz2 gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar.lz gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar.xz gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.tar.zst gsoc2013-evolution-59606c28498271b7e0d3734f9b094bee3fc10cf8.zip |
+ * folder-browser.c (folder_browser_destroy): Unref the shell
+ interface that we have a handle to.
+
+ * folder-browser-factory.c (control_destroy_cb): New function;
+ destroys a folder-browser when its control is destroyed.
+ (folder_browser_factory): Hook up to the above.
+
+ * e-shell-view.c (destroy_folder_view): New function;
+ Bonobo_Unknown_unref's the controls that have the views in them.
+ (esv_destroy): Calls the above for each folder_view in the
+ hashtable.
+ (get_view): unref the ServiceRepository interface of the control
+ when we're done with it.
+
svn path=/trunk/; revision=2333
Diffstat (limited to 'mail/folder-browser.c')
-rw-r--r-- | mail/folder-browser.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mail/folder-browser.c b/mail/folder-browser.c index 5b75fd189d..f4f32ba4b7 100644 --- a/mail/folder-browser.c +++ b/mail/folder-browser.c @@ -33,7 +33,15 @@ static void folder_browser_destroy (GtkObject *object) { FolderBrowser *folder_browser = FOLDER_BROWSER (object); + + if (folder_browser->shell) { + CORBA_Environment ev; + CORBA_exception_init (&ev); + Bonobo_Unknown_unref (folder_browser->shell, &ev); + CORBA_exception_free (&ev); + } + if (folder_browser->uri) g_free (folder_browser->uri); |