From: Kevin McCarthy Date: Fri, 26 Apr 2013 19:10:46 +0000 (-0700) Subject: Fix postpone/resume to not remove a Mail-Followup-To header (closes #3070) X-Git-Tag: mutt-1-5-23-rel~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=acbd9d3856214574920ff82f278ed7e8222c361c;p=mutt Fix postpone/resume to not remove a Mail-Followup-To header (closes #3070) This solution changes mutt_prepare_template() to check whether the message_id field is NULL to decide whether to wipe the message-id and mail-followup-to headers when instantiating the message. If we are resending a message, we don't want the previous message-id and mail-followup-to headers. If we are resuming a postponed message, however, we want to keep the mail-followup-to header if any was set before the postpone. (grafted from d7d83298011a6e7aa31bde49e0b6b21209a85fd2) --- diff --git a/postpone.c b/postpone.c index 2ba019c9..801ef104 100644 --- a/postpone.c +++ b/postpone.c @@ -551,8 +551,15 @@ int mutt_prepare_template (FILE *fp, CONTEXT *ctx, HEADER *newhdr, HEADER *hdr, newhdr->content->length = hdr->content->length; mutt_parse_part (fp, newhdr->content); - FREE (&newhdr->env->message_id); - FREE (&newhdr->env->mail_followup_to); /* really? */ + /* If message_id is set, then we are resending a message and don't want + * message_id or mail_followup_to. Otherwise, we are resuming a + * postponed message, and want to keep the mail_followup_to. + */ + if (newhdr->env->message_id != NULL) + { + FREE (&newhdr->env->message_id); + FREE (&newhdr->env->mail_followup_to); + } /* decrypt pgp/mime encoded messages */