aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/gui/component/select-names/e-select-names-bonobo.c
diff options
context:
space:
mode:
authorJon Trowbridge <trow@ximian.com>2001-12-08 00:43:44 +0800
committerJon Trowbridge <trow@src.gnome.org>2001-12-08 00:43:44 +0800
commita3b92fe138eeacdbd24e8292c9ccc615bf8e949b (patch)
tree3203cf2842d98c75dc47de20d9520441958d2df3 /addressbook/gui/component/select-names/e-select-names-bonobo.c
parent3be029c79a9f458afa3e917afb1304ae24622eb0 (diff)
downloadgsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar.gz
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar.bz2
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar.lz
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar.xz
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.tar.zst
gsoc2013-evolution-a3b92fe138eeacdbd24e8292c9ccc615bf8e949b.zip
Extensively refactored -- this code had gotten _really_ ugly. Untangle
2001-12-07 Jon Trowbridge <trow@ximian.com> * gui/component/select-names/e-select-names-manager.c: Extensively refactored -- this code had gotten _really_ ugly. Untangle things to the point where our reference counting problems are fixable. * gui/component/select-names/e-select-names-bonobo.c (impl_destroy): Remove all of the ugly hacks to work around our memory management problems, and just unref the manager. (Fixes #14412) svn path=/trunk/; revision=14934
Diffstat (limited to 'addressbook/gui/component/select-names/e-select-names-bonobo.c')
-rw-r--r--addressbook/gui/component/select-names/e-select-names-bonobo.c19
1 files changed, 1 insertions, 18 deletions
diff --git a/addressbook/gui/component/select-names/e-select-names-bonobo.c b/addressbook/gui/component/select-names/e-select-names-bonobo.c
index 071b2e0b2b..55ef3ec89a 100644
--- a/addressbook/gui/component/select-names/e-select-names-bonobo.c
+++ b/addressbook/gui/component/select-names/e-select-names-bonobo.c
@@ -348,18 +348,11 @@ impl_SelectNames_activate_dialog (PortableServer_Servant servant,
/* GtkObject methods. */
-/* ACK! */
-typedef struct {
- char *id;
- EEntry *entry;
-} ESelectNamesManagerEntry;
-
static void
impl_destroy (GtkObject *object)
{
ESelectNamesBonobo *select_names;
ESelectNamesBonoboPrivate *priv;
- EIterator *iterator;
select_names = E_SELECT_NAMES_BONOBO (object);
priv = select_names->priv;
@@ -369,17 +362,7 @@ impl_destroy (GtkObject *object)
priv->manager->names = NULL;
}
- /* More suckage */
- iterator = e_list_get_iterator (priv->manager->entries);
- for (e_iterator_reset (iterator); e_iterator_is_valid (iterator); e_iterator_next (iterator)) {
- ESelectNamesManagerEntry *entry = (ESelectNamesManagerEntry *)e_iterator_get (iterator);
- if (entry && entry->entry)
- gtk_widget_destroy (GTK_WIDGET (entry->entry));
- }
- gtk_object_unref (GTK_OBJECT (iterator));
-
- /* FIXME: We leak on purpose. This sucks. */
- /* gtk_object_unref (GTK_OBJECT (priv->manager)); */
+ gtk_object_unref (GTK_OBJECT (priv->manager));
g_free (priv);
}