talons

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

commit 8c9594c5e8783d2dbd4c27f4366a1bf398459e49
parent cd9afd9b09881c116c7b932c2bd4643c96d0729f
Author: Andrej Kacian <ticho@claws-mail.org>
Date:   Wed, 13 Mar 2019 20:19:59 +0100

Fix a memory leak in Pine address book support

Also removed mgu_clear_slist(), since it is not
used anywhere anymore.

Diffstat:
Msrc/common/mgutils.c | 12------------
Msrc/common/mgutils.h | 1-
Msrc/pine.c | 6++----
3 files changed, 2 insertions(+), 17 deletions(-)

diff --git a/src/common/mgutils.c b/src/common/mgutils.c @@ -137,18 +137,6 @@ gchar *mgu_replace_string( gchar *str, const gchar *value ) { * Clear a linked list by setting node data pointers to NULL. Note that * items are not freed. */ -void mgu_clear_slist( GSList *list ) { - GSList *node = list; - while( node ) { - node->data = NULL; - node = g_slist_next( node ); - } -} - -/* -* Clear a linked list by setting node data pointers to NULL. Note that -* items are not freed. -*/ void mgu_clear_list( GList *list ) { GList *node = list; while( node ) { diff --git a/src/common/mgutils.h b/src/common/mgutils.h @@ -47,7 +47,6 @@ void mgu_free_list ( GSList *list ); void mgu_free_dlist ( GList *list ); gchar *mgu_list_coalesce ( GSList *list ); gchar *mgu_replace_string ( gchar *str, const gchar *value ); -void mgu_clear_slist ( GSList *list ); void mgu_clear_list ( GList *list ); gchar *mgu_email_check_empty ( gchar *address ); GList *mgu_parse_string ( gchar *line, const gint maxTokens, diff --git a/src/pine.c b/src/pine.c @@ -195,10 +195,8 @@ static void pine_free_rec( Pine_ParsedRec *rec ) { g_free( rec->address ); g_free( rec->fcc ); g_free( rec->comments ); - mgu_clear_slist( rec->listName ); - mgu_clear_slist( rec->listAddr ); - g_slist_free( rec->listName ); - g_slist_free( rec->listAddr ); + g_slist_free_full( rec->listName, g_free ); + g_slist_free_full( rec->listAddr, g_free ); rec->nickName = NULL; rec->name = NULL; rec->address = NULL;