[balsa/wip/gtk4: 205/351] libbalsa-message: streamline some list freeing
- From: Peter Bloomfield <peterb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [balsa/wip/gtk4: 205/351] libbalsa-message: streamline some list freeing
- Date: Wed, 23 May 2018 21:34:11 +0000 (UTC)
commit e555c4ecd782d42934af5990e3dbbe1655b996de
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date: Sun Mar 4 14:50:53 2018 -0500
libbalsa-message: streamline some list freeing
Drop the FREE_HEADER_LIST macro, and use g_list_free_full(header,
g_strfreev) or libbalsa_clear_list(&header, g_strfreev), as appropriate.
libbalsa/message.c | 20 +++++++-------------
libbalsa/message.h | 3 ---
2 files changed, 7 insertions(+), 16 deletions(-)
---
diff --git a/libbalsa/message.c b/libbalsa/message.c
index cdf7da2..949eaf6 100644
--- a/libbalsa/message.c
+++ b/libbalsa/message.c
@@ -182,14 +182,10 @@ libbalsa_message_finalize(GObject * object)
static void
lb_message_headers_extra_destroy(LibBalsaMessageHeaders * headers)
{
- if (!headers)
- return;
-
- FREE_HEADER_LIST(headers->user_hdrs);
- headers->user_hdrs = NULL;
-
- g_free(headers->fcc_url);
- headers->fcc_url = NULL;
+ if (headers != NULL) {
+ libbalsa_clear_list(&headers->user_hdrs, (GDestroyNotify) g_strfreev);
+ g_clear_pointer(&headers->fcc_url, g_free);
+ }
}
void
@@ -268,7 +264,7 @@ canonize_header_value(gchar *value)
returns allocated GList containing (header=>value) ALL headers pairs
as generated by g_strsplit.
The list has to be freed by the following chunk of code:
- FREE_HEADER_LIST(list);
+ g_list_free_full(list, (GDestroyNotify) g_strfreev)
*/
static gchar **
libbalsa_create_hdr_pair(const gchar * name, gchar * value)
@@ -378,7 +374,7 @@ libbalsa_message_set_user_header(LibBalsaMessage * message,
if ((header = libbalsa_message_find_user_hdr(message, name))) {
headers->user_hdrs =
g_list_remove_link(headers->user_hdrs, header);
- FREE_HEADER_LIST(header);
+ g_list_free_full(header, (GDestroyNotify) g_strfreev);
}
if (value && *value)
@@ -425,9 +421,7 @@ prepend_header_misc(GList *res,
* returns allocated GList containing (header=>value) ALL headers
* pairs as generated by g_strsplit. The list has to be freed by the
* following chunk of code (or something functionally similar):
- *
- * g_list_foreach(list, (GFunc) g_strfreev, NULL);
- * g_list_free(list);
+ * g_list_free_full(list, (GDestroyNotify) g_strfreev)
*/
diff --git a/libbalsa/message.h b/libbalsa/message.h
index 3cc11c0..02f3a72 100644
--- a/libbalsa/message.h
+++ b/libbalsa/message.h
@@ -156,9 +156,6 @@ struct _LibBalsaMessageHeaders {
GList *user_hdrs;
};
-/** FREE_HEADER_LIST() frees user_hdrs */
-#define FREE_HEADER_LIST(l) g_list_free_full((l),(GDestroyNotify)g_strfreev)
-
struct _LibBalsaMessage {
GObject object;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]