talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 1de6ad1ddacaf5fac71b9592b4a474c9ee9cd277
parent 050689774a127bcb8646bbf9c4caf3216dcee803
Author: Andrej Kacian <ticho@claws-mail.org>
Date:   Wed, 12 Jul 2017 22:16:00 +0200

Fix three small memory leaks in addressbook.

Diffstat:
Msrc/addrclip.c | 1+
Msrc/addressbook.c | 12+++++++-----
2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/addrclip.c b/src/addrclip.c @@ -96,6 +96,7 @@ void addrclip_free( AddressClipboard *clipBoard ) { addrclip_clear( clipBoard ); clipBoard->cutFlag = FALSE; + g_free(clipBoard); } /* diff --git a/src/addressbook.c b/src/addressbook.c @@ -654,6 +654,7 @@ void addressbook_destroy( void ) { } if( _clipBoard_ != NULL ) { addrclip_free( _clipBoard_ ); + _clipBoard_ = NULL; } if( _addressIndex_ != NULL ) { addrindex_free_index( _addressIndex_ ); @@ -3690,7 +3691,7 @@ static void addressbook_folder_load_one_person( } static void addressbook_folder_load_person( GtkCMCTree *clist, ItemFolder *itemFolder ) { - GList *items; + GList *items, *cur; AddressTypeControlItem *atci = addrbookctl_lookup( ADDR_ITEM_PERSON ); AddressTypeControlItem *atciMail = addrbookctl_lookup( ADDR_ITEM_EMAIL ); const gchar *search_str; @@ -3702,12 +3703,12 @@ static void addressbook_folder_load_person( GtkCMCTree *clist, ItemFolder *itemF /* Load email addresses */ items = addritem_folder_get_person_list( itemFolder ); - for( ; items != NULL; items = g_list_next( items ) ) { + for(cur = items ; cur != NULL; cur = g_list_next( cur ) ) { ItemPerson *person; GList *node; ItemEMail *email; - person = (ItemPerson *)items->data; + person = (ItemPerson *)cur->data; if (!person) continue; node = person->listEMail; @@ -3720,7 +3721,7 @@ static void addressbook_folder_load_person( GtkCMCTree *clist, ItemFolder *itemF continue; } - addressbook_folder_load_one_person( clist, items->data, atci, atciMail ); + addressbook_folder_load_one_person( clist, cur->data, atci, atciMail ); } /* Free up the list */ mgu_clear_list( items ); @@ -4206,10 +4207,11 @@ static gboolean migrate_addrbook(const gchar *origdir, const gchar *destdir) void addressbook_read_file( void ) { AddressIndex *addrIndex = NULL; gchar *indexdir = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S, ADDRBOOK_DIR, NULL); - + debug_print( "Reading address index...\n" ); if( _addressIndex_ ) { debug_print( "address book already read!!!\n" ); + g_free(indexdir); return; }