Subject: 23.3; rmail-edit-current-message adds extra '>'s to Froms...
From: Mark Lillibridge <[email-masked]>
To: [email-masked]
Date: Sat, 22 Oct 2011 12:05:57 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Start with a Rmail message (this one will do) not containing MIME that
contains lines like the following:

>From level 1
>>From level 2
>>>From level 3

Hit 'e' to edit the message.  Notice that nothing changes.  Now hit ^c^c
or ^c^] to stop editing (the later is supposed to abort, leaving the
message unchanged).  Notice that your message now has one more > in
front of each of the from lines:

>>From level 1
>>>From level 2
>>>>From level 3

You can repeat this as many times as you like, adding more and more >'s.

Towards a patch, I notice that rmail-cease-edit has the following code:

rmailedit.el:135:
  ;; Disguise any "From " lines so they don't start a new message.
  (goto-char (point-min))
  (or rmail-old-pruned (forward-line 1))
  (while (re-search-forward "^>*From " nil t)
    (beginning-of-line)
    (insert ">")
    (forward-line))

There is no corresponding code in the rmail-edit-current-message or the
viewing code that I can find.

    This probably needs more thought, but I think the decode code should
remove one >, and the incorporate new messages and done editting code
should add one > (as above).  Note this is related to bug #6574: Rmail
23 uses a broken mailbox format (mboxo) instead of a sane one like
mboxrd.

    I note that fetchmail to mbox loses information because it only adds
a > to From's without one already.  This is arguably not Rmail's fault,
however.

- Mark