changeset: 6724:488f91a85115
user:      Kevin McCarthy <ke...@8t8.us>
date:      Tue Jul 12 18:04:28 2016 -0700
link:      http://dev.mutt.org/hg/mutt/rev/488f91a85115

Fix BODY->d_filename memory leaks.

mutt_message_to_7bit() and transform_to_7bit() were overwriting
d_filename without freeing the previous value.

mutt_free_body() was not freeing the d_filename pointer.

diffs (30 lines):

diff -r b4de6941bbb9 -r 488f91a85115 muttlib.c
--- a/muttlib.c Tue Jul 12 17:46:09 2016 -0700
+++ b/muttlib.c Tue Jul 12 18:04:28 2016 -0700
@@ -178,6 +178,7 @@
     }
 
     FREE (&b->filename);
+    FREE (&b->d_filename);
     FREE (&b->charset);
     FREE (&b->content);
     FREE (&b->xtype);
diff -r b4de6941bbb9 -r 488f91a85115 sendlib.c
--- a/sendlib.c Tue Jul 12 17:46:09 2016 -0700
+++ b/sendlib.c Tue Jul 12 18:04:28 2016 -0700
@@ -1093,6 +1093,7 @@
     return;
 
   a->encoding = ENC7BIT;
+  FREE (&a->d_filename);
   a->d_filename = a->filename;
   if (a->filename && a->unlink)
     unlink (a->filename);
@@ -1142,6 +1143,7 @@
       s.fpin = fpin;
       mutt_decode_attachment (a, &s);
       safe_fclose (&s.fpout);
+      FREE (&a->d_filename);
       a->d_filename = a->filename;
       a->filename = safe_strdup (buff);
       a->unlink = 1;

Reply via email to