diff options
author | Hans Petter Jansson <hpj@ximian.com> | 2003-08-14 15:18:18 +0800 |
---|---|---|
committer | Hans Petter <hansp@src.gnome.org> | 2003-08-14 15:18:18 +0800 |
commit | 6d45ed28597a85c6b5dfa49aeeaf3911da76cf77 (patch) | |
tree | e317252d95d4df6ef75f10088d1372c1978b6e7b /addressbook/gui/component | |
parent | 7a208fc48c41e901d527eab89cb103f3c999ad86 (diff) | |
download | gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar.gz gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar.bz2 gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar.lz gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar.xz gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.tar.zst gsoc2013-evolution-6d45ed28597a85c6b5dfa49aeeaf3911da76cf77.zip |
Chain.
2003-08-12 Hans Petter Jansson <hpj@ximian.com>
* backend/ebook/e-destination.c (e_destination_dispose): Chain.
* gui/component/e-address-widget.c (e_address_widget_destroy): Chain.
Prevent double frees. Prevent double GSource removal.
* gui/component/e-cardlist-model.c (e_cardlist_model_class_init):
Store parent class.
(e_cardlist_model_dispose): Chain. Prevent double frees and unrefs.
* gui/contact-editor/e-contact-editor-address.c
(e_contact_editor_address_dispose): Chain.
* gui/contact-editor/e-contact-editor-fullname.c
(e_contact_editor_fullname_dispose): Chain.
* gui/contact-list-editor/e-contact-list-editor.c
(e_contact_list_editor_dispose): Chain.
* gui/contact-list-editor/e-contact-list-model.c
(contact_list_model_destroy): Chain. Prevent double frees and unrefs.
* gui/widgets/e-addressbook-reflow-adapter.c (addressbook_dispose):
Chain.
(addressbook_finalize): Chain.
* gui/widgets/e-addressbook-table-adapter.c (addressbook_dispose):
Chain.
* gui/widgets/e-addressbook-treeview-adapter.c (addressbook_destroy):
Chain. Prevent double free.
* gui/widgets/gal-view-minicard.c (gal_view_minicard_dispose):
Chain. Prevent double free and detach.
* gui/widgts/gal-view-treeview.c (gal_view_treeview_dispose):
Chain. Prevent double free and detach.
* printins/e-contact-print-style-editor.c
(e_contact_print_stule_editor_destroy): Chain. Prevent double unref.
svn path=/trunk/; revision=22229
Diffstat (limited to 'addressbook/gui/component')
-rw-r--r-- | addressbook/gui/component/e-address-widget.c | 13 | ||||
-rw-r--r-- | addressbook/gui/component/e-cardlist-model.c | 16 |
2 files changed, 24 insertions, 5 deletions
diff --git a/addressbook/gui/component/e-address-widget.c b/addressbook/gui/component/e-address-widget.c index e9698d5b1d..9ec1e6ebba 100644 --- a/addressbook/gui/component/e-address-widget.c +++ b/addressbook/gui/component/e-address-widget.c @@ -74,13 +74,22 @@ e_address_widget_destroy (GtkObject *obj) EAddressWidget *addr = E_ADDRESS_WIDGET (obj); g_free (addr->name); + addr->name = NULL; + g_free (addr->email); + addr->email = NULL; - if (addr->query_tag) + if (addr->query_tag) { e_book_simple_query_cancel (common_book, addr->query_tag); + addr->query_tag = 0; + } - if (addr->query_idle_tag) + if (addr->query_idle_tag) { g_source_remove (addr->query_idle_tag); + addr->query_idle_tag = 0; + } + + (* GTK_OBJECT_CLASS (parent_class)->destroy) (obj); } static gint diff --git a/addressbook/gui/component/e-cardlist-model.c b/addressbook/gui/component/e-cardlist-model.c index aca0bac22f..be1ff3ddd2 100644 --- a/addressbook/gui/component/e-cardlist-model.c +++ b/addressbook/gui/component/e-cardlist-model.c @@ -18,16 +18,24 @@ #define PARENT_TYPE e_table_model_get_type() +static GObjectClass *parent_class = NULL; + static void e_cardlist_model_dispose(GObject *object) { ECardlistModel *model = E_CARDLIST_MODEL(object); int i; - for ( i = 0; i < model->data_count; i++ ) { - g_object_unref(model->data[i]); + if (model->data != NULL) { + for ( i = 0; i < model->data_count; i++ ) { + g_object_unref(model->data[i]); + } + g_free(model->data); + model->data = NULL; } - g_free(model->data); + + if (G_OBJECT_CLASS (parent_class)->dispose) + (* G_OBJECT_CLASS (parent_class)->dispose) (object); } /* This function returns the number of columns in our ETableModel. */ @@ -157,6 +165,8 @@ static void e_cardlist_model_class_init (GObjectClass *object_class) { ETableModelClass *model_class = (ETableModelClass *) object_class; + + parent_class = g_type_class_peek_parent (object_class); object_class->dispose = e_cardlist_model_dispose; |