From 872eec784e2ba1c65ef9e8489a9fc199c4059fc3 Mon Sep 17 00:00:00 2001 From: Jon Trowbridge Date: Sun, 21 Oct 2001 00:57:18 +0000 Subject: Fix memory leak. 2001-10-20 Jon Trowbridge * gui/component/select-names/e-select-names-completion.c (name_style_query): Fix memory leak. * gui/widgets/e-addressbook-view.c (jump_to_letter): Free our string vector letter_v when we are done with it. * gui/contact-editor/e-contact-quick-add.c (edit_card): Unref our QuickAdd structure. * gui/component/e-address-popup.c (e_address_popup_construct): Unref our style after we are done with it. svn path=/trunk/; revision=13835 --- addressbook/gui/component/e-address-popup.c | 1 + addressbook/gui/component/select-names/e-select-names-completion.c | 5 ++++- addressbook/gui/contact-editor/e-contact-quick-add.c | 1 + addressbook/gui/widgets/e-addressbook-view.c | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) (limited to 'addressbook/gui') diff --git a/addressbook/gui/component/e-address-popup.c b/addressbook/gui/component/e-address-popup.c index 362eee4250..f9e54c4b9e 100644 --- a/addressbook/gui/component/e-address-popup.c +++ b/addressbook/gui/component/e-address-popup.c @@ -849,6 +849,7 @@ e_address_popup_construct (EAddressPopup *pop) GtkStyle *style = gtk_style_copy (gtk_widget_get_style (GTK_WIDGET (name_holder))); style->bg[0] = color; gtk_widget_set_style (GTK_WIDGET (name_holder), style); + gtk_style_unref (style); } pop->generic_view = gtk_frame_new (NULL); diff --git a/addressbook/gui/component/select-names/e-select-names-completion.c b/addressbook/gui/component/select-names/e-select-names-completion.c index 403173caa8..0da1b42a50 100644 --- a/addressbook/gui/component/select-names/e-select-names-completion.c +++ b/addressbook/gui/component/select-names/e-select-names-completion.c @@ -230,9 +230,12 @@ name_style_query (ESelectNamesCompletion *comp, const gchar *field) strv = g_strsplit (cpy, " ", 0); for (i=0; strv[i]; ++i) { + gchar *old; ++count; g_strstrip (strv[i]); - strv[i] = g_strdup_printf ("(contains \"%s\" \"%s\")", field, strv[i]); + old = strv[i]; + strv[i] = g_strdup_printf ("(contains \"%s\" \"%s\")", field, old); + g_free (old); } if (count == 1) { diff --git a/addressbook/gui/contact-editor/e-contact-quick-add.c b/addressbook/gui/contact-editor/e-contact-quick-add.c index 7b84f50281..637c4019aa 100644 --- a/addressbook/gui/contact-editor/e-contact-quick-add.c +++ b/addressbook/gui/contact-editor/e-contact-quick-add.c @@ -219,6 +219,7 @@ static void edit_card (QuickAdd *qa) { e_book_use_local_address_book (ce_have_book, qa); + quick_add_unref (qa); } static void diff --git a/addressbook/gui/widgets/e-addressbook-view.c b/addressbook/gui/widgets/e-addressbook-view.c index 5142d99f2d..76f37b5f00 100644 --- a/addressbook/gui/widgets/e-addressbook-view.c +++ b/addressbook/gui/widgets/e-addressbook-view.c @@ -482,6 +482,7 @@ jump_to_letter(GtkWidget *button, LetterClosure *closure) } g_string_append (gstr, "))"); query = gstr->str; + g_strfreev (letter_v); g_string_free (gstr, FALSE); } else { char s1[6 + 1], s2[6 + 1]; -- cgit v1.2.3