Don't call rmail-modify-format here.
(rmail-expunge): Call it here after expunge is confirmed.
(rmail-confirm-expunge): Doc fix. Mark as risky.
(rmail-convert-babyl-to-mbox): Call rmail-modify-format.
(rmail-set-attribute): Call rmail-dont-modify-format only for `unseen'.
For other attributes, call `rmail-modify-format',
and propagate the modified flag to rmail-buffer.
Instead, query before modifications that would save it.
* mail/rmail.el (rmail-was-converted): New variable.
(rmail-seriously-modified): New variable.
(rmail-perm-variables): Set them to nil.
(rmail-convert-babyl-to-mbox): Don't query about converting Babyl file.
Instead, set rmail-was-converted.
(rmail-modify-format): New function. Query if save will change format.
(rmail-dont-modify-format): New function.
(rmail-duplicate-message, rmail-get-new-mail):
Call rmail-modify-format.
(rmail-set-header): Call rmail-dont-modify-format.
(rmail-set-attribute): Likewise.
(rmail-expunge-confirmed): Call rmail-modify-format.
* mail/rmailout.el (rmail-output-to-rmail-buffer):
Call rmail-modify-format.
(rmail-mode-map): Bind rmail-mime to `v'.
(rmail-get-new-mail): Doc fix.
(rmail-beginning-of-message, rmail-end-of-message): Preserve the current
header style.
(rmail-get-new-mail-filter-spam): Declare. Move definition to
rmail-spam-filter.el.
(rmail-get-new-mail-1): Move the beep and sleep to
rmail-get-new-mail-filter-spam.
(rmail-current-message, rmail-total-messages)
(rmail-message-vector, rmail-deleted-vector): Add doc strings.
(rmail-duplicate-message): Doc fix.
(rmail-get-header-1, rmail-set-header-1, rmail-set-attribute-1):
New functions.
(rmail-get-header, rmail-set-header, rmail-set-attribute):
Use rmail-apply-in-message.
(rmail-message-attr-p): Use rmail-get-header, hence no longer requires
unswapped-ness.
(rmail-get-attr-names): Check for missing or corrupt attribute headers.
(rmail-auto-file): Set the filed attribute, rather than explicitly not
doing so. (Bug#2231)
the X-Coding-System header with the new encoding, and let rmail-show-message
do the rest. Remove unused argument RAW. Fix doc string to be consistent
with the new implementation.
(rmail-show-message): Honor X-Coding-System header, if present, in preference
to Content-Type header.
inserting the converted mailbox.
(rmail-get-new-mail): Restore the loop over inboxes when two or more
have the same basename. (Bug#2164)
Set the return value according to whether any mail was found,
not just in the last inbox. Only show a message and run the hook after
checking all inboxes.
(rmail-get-new-mail-1): Move message display and running the hook to
rmail-get-new-mail.
(rmail-swap-buffers): New function.
(rmail-change-major-mode-hook, rmail-swap-buffers-maybe, rmail-show-message):
Use rmail-swap-buffers.
(rmail-decode-region): If DESTINATION is a buffer, set the encoding of that
buffer, rather than the current buffer.
(rmail-show-message): Make error message about uuencoded mail more explicit.
(rmail-show-message-maybe): Simplify code. Doc fix.
(rmail-show-message): Doc fix.