From 2ae6b8cb68759667c3caf024cb434de59bcc0899 Mon Sep 17 00:00:00 2001
From: David Bremner <david@tethera.net>
Date: Sat, 18 Mar 2017 14:07:45 -0300
Subject: [PATCH] cli/show: fix some memory leaks in format_part_text

Mimic Jeff Stedfast's changes to format_headers_sprinter, clean up use
of internet_address_list_to_string and
g_mime_message_get_date_as_string.
---
 notmuch-show.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/notmuch-show.c b/notmuch-show.c
index 2dbf8704..615857fe 100644
--- a/notmuch-show.c
+++ b/notmuch-show.c
@@ -502,7 +502,8 @@ format_part_text (const void *ctx, sprinter_t *sp, mime_node_t *node,
     if (GMIME_IS_MESSAGE (node->part)) {
 	GMimeMessage *message = GMIME_MESSAGE (node->part);
 	InternetAddressList *recipients;
-	const char *recipients_string;
+	char *recipients_string;
+	char *date_string;
 
 	printf ("\fheader{\n");
 	if (node->envelope_file)
@@ -513,11 +514,15 @@ format_part_text (const void *ctx, sprinter_t *sp, mime_node_t *node,
 	recipients_string = internet_address_list_to_string (recipients, 0);
 	if (recipients_string)
 	    printf ("To: %s\n", recipients_string);
+	g_free (recipients_string);
 	recipients = g_mime_message_get_recipients (message, GMIME_RECIPIENT_TYPE_CC);
 	recipients_string = internet_address_list_to_string (recipients, 0);
 	if (recipients_string)
 	    printf ("Cc: %s\n", recipients_string);
-	printf ("Date: %s\n", g_mime_message_get_date_as_string (message));
+	g_free (recipients_string);
+	date_string = g_mime_message_get_date_as_string (message);
+	printf ("Date: %s\n", date_string);
+	g_free (date_string);
 	printf ("\fheader}\n");
 
 	printf ("\fbody{\n");
-- 
2.45.2