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.
}
FREE (&b->filename);
+ FREE (&b->d_filename);
FREE (&b->charset);
FREE (&b->content);
FREE (&b->xtype);
return;
a->encoding = ENC7BIT;
+ FREE (&a->d_filename);
a->d_filename = a->filename;
if (a->filename && a->unlink)
unlink (a->filename);
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;