summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meeks <michael@ximian.com>2001-12-12 23:19:36 +0000
committerMichael Meeks <michael@src.gnome.org>2001-12-12 23:19:36 +0000
commit612ed122c7aa457410fb14279e90ab161a4bc15c (patch)
tree51df5701ea67666eabe75ab3303af987f4b5e56f
parentf9769d4cd3a5e9fb3784b45a356cbd9a1d718e14 (diff)
downloadnautilus-612ed122c7aa457410fb14279e90ab161a4bc15c.tar.gz
2001-12-12 Michael Meeks <michael@ximian.com> * src/file-manager/fm-icon-view.c (fm_icon_view_merge_menus): fix container ref leak. * src/file-manager/fm-search-list-view.c (real_merge_menus): ditto. * src/file-manager/fm-desktop-icon-view.c (fm_desktop_icon_view_destroy): more guards. (real_merge_menus): fix container ref leak.
-rw-r--r--ChangeLog12
-rw-r--r--src/file-manager/fm-desktop-icon-view.c8
-rw-r--r--src/file-manager/fm-icon-view.c6
-rw-r--r--src/file-manager/fm-search-list-view.c6
4 files changed, 26 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 89d7ec706..b9919f780 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2001-12-12 Michael Meeks <michael@ximian.com>
+ * src/file-manager/fm-icon-view.c
+ (fm_icon_view_merge_menus): fix container ref leak.
+
+ * src/file-manager/fm-search-list-view.c
+ (real_merge_menus): ditto.
+
+ * src/file-manager/fm-desktop-icon-view.c
+ (fm_desktop_icon_view_destroy): more guards.
+ (real_merge_menus): fix container ref leak.
+
+2001-12-12 Michael Meeks <michael@ximian.com>
+
* src/nautilus-window.c (nautilus_window_destroy):
protect vs. double destroy.
diff --git a/src/file-manager/fm-desktop-icon-view.c b/src/file-manager/fm-desktop-icon-view.c
index ac536281f..73f1fa2c5 100644
--- a/src/file-manager/fm-desktop-icon-view.c
+++ b/src/file-manager/fm-desktop-icon-view.c
@@ -258,6 +258,7 @@ fm_desktop_icon_view_destroy (GtkObject *object)
if (icon_view->details->ui != NULL) {
bonobo_ui_component_unset_container (icon_view->details->ui, NULL);
bonobo_object_unref (BONOBO_OBJECT (icon_view->details->ui));
+ icon_view->details->ui = NULL;
}
free_volume_black_list (icon_view);
@@ -1236,6 +1237,7 @@ static void
real_merge_menus (FMDirectoryView *view)
{
FMDesktopIconView *desktop_view;
+ Bonobo_UIContainer ui_container;
BonoboUIVerb verbs [] = {
BONOBO_UI_VERB ("Change Background", change_background_callback),
BONOBO_UI_VERB ("Empty Trash Conditional", empty_trash_callback),
@@ -1250,9 +1252,11 @@ real_merge_menus (FMDirectoryView *view)
desktop_view = FM_DESKTOP_ICON_VIEW (view);
desktop_view->details->ui = bonobo_ui_component_new ("Desktop Icon View");
+
+ ui_container = fm_directory_view_get_bonobo_ui_container (view);
bonobo_ui_component_set_container (desktop_view->details->ui,
- fm_directory_view_get_bonobo_ui_container (view),
- NULL);
+ ui_container, NULL);
+ bonobo_object_release_unref (ui_container, NULL);
bonobo_ui_util_set_ui (desktop_view->details->ui,
DATADIR,
"nautilus-desktop-icon-view-ui.xml",
diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c
index 70623933e..854345897 100644
--- a/src/file-manager/fm-icon-view.c
+++ b/src/file-manager/fm-icon-view.c
@@ -1311,6 +1311,7 @@ static void
fm_icon_view_merge_menus (FMDirectoryView *view)
{
FMIconView *icon_view;
+ Bonobo_UIContainer ui_container;
BonoboUIVerb verbs [] = {
BONOBO_UI_VERB ("Rename", rename_icon_callback),
BONOBO_UI_VERB ("Stretch", show_stretch_handles_callback),
@@ -1328,9 +1329,10 @@ fm_icon_view_merge_menus (FMDirectoryView *view)
icon_view->details->ui = bonobo_ui_component_new ("Icon View");
g_signal_connect (icon_view->details->ui,
"ui_event", G_CALLBACK (handle_ui_event), icon_view);
+ ui_container = fm_directory_view_get_bonobo_ui_container (view);
bonobo_ui_component_set_container (icon_view->details->ui,
- fm_directory_view_get_bonobo_ui_container (view),
- NULL);
+ ui_container, NULL);
+ bonobo_object_release_unref (ui_container, NULL);
bonobo_ui_util_set_ui (icon_view->details->ui,
DATADIR,
"nautilus-icon-view-ui.xml",
diff --git a/src/file-manager/fm-search-list-view.c b/src/file-manager/fm-search-list-view.c
index ec9bcc3ee..5dcce43ba 100644
--- a/src/file-manager/fm-search-list-view.c
+++ b/src/file-manager/fm-search-list-view.c
@@ -713,6 +713,7 @@ static void
real_merge_menus (FMDirectoryView *view)
{
FMSearchListView *search_view;
+ Bonobo_UIContainer ui_container;
BonoboUIVerb verbs [] = {
BONOBO_UI_VERB ("Indexing Info", indexing_info_callback),
BONOBO_UI_VERB ("Reveal", reveal_selected_items_callback),
@@ -724,9 +725,10 @@ real_merge_menus (FMDirectoryView *view)
search_view = FM_SEARCH_LIST_VIEW (view);
search_view->details->ui = bonobo_ui_component_new ("Search List View");
+ ui_container = fm_directory_view_get_bonobo_ui_container (view);
bonobo_ui_component_set_container (search_view->details->ui,
- fm_directory_view_get_bonobo_ui_container (view),
- NULL);
+ ui_container, NULL);
+ bonobo_object_release_unref (ui_container, NULL);
bonobo_ui_util_set_ui (search_view->details->ui,
DATADIR,
"nautilus-search-list-view-ui.xml",