From 70e34de6ec359d96f39c4be53f05961683f72321 Mon Sep 17 00:00:00 2001 From: TAKAHASHI Tamotsu Date: Sat, 12 Feb 2005 19:35:36 +0000 Subject: [PATCH] Partially fix debian bug #275060 (editing a message in a mbox loses its flags). --- editmsg.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/editmsg.c b/editmsg.c index 981899a5..0d037d4f 100644 --- a/editmsg.c +++ b/editmsg.c @@ -79,7 +79,9 @@ static int edit_one_message (CONTEXT *ctx, HEADER *cur) return -1; } - rc = mutt_append_message (&tmpctx, ctx, cur, 0, CH_NOLEN | CH_NOSTATUS); oerrno = errno; + rc = mutt_append_message (&tmpctx, ctx, cur, 0, CH_NOLEN | + ((ctx->magic == M_MBOX || ctx->magic == M_MMDF) ? 0 : CH_NOSTATUS)); + oerrno = errno; mx_close_mailbox (&tmpctx, NULL); @@ -143,7 +145,8 @@ static int edit_one_message (CONTEXT *ctx, HEADER *cur) goto bail; } - of = cf = 0; + of = 0; + cf = ((tmpctx.magic == M_MBOX || tmpctx.magic == M_MMDF) ? 0 : CH_NOSTATUS); if (fgets (buff, sizeof (buff), fp) && is_from (buff, NULL, 0, NULL)) { @@ -171,7 +174,7 @@ static int edit_one_message (CONTEXT *ctx, HEADER *cur) goto bail; } - if ((rc = mutt_copy_hdr (fp, msg->fp, 0, sb.st_size, CH_NOSTATUS | CH_NOLEN | cf, NULL)) == 0) + if ((rc = mutt_copy_hdr (fp, msg->fp, 0, sb.st_size, CH_NOLEN | cf, NULL)) == 0) { fputc ('\n', msg->fp); rc = mutt_copy_stream (fp, msg->fp); -- 2.40.0