Fix rmail-mbox handling of terminating newlines.
* lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text): Ensure that mbox format messages end in two newlines. Fixes: debbugs:9974
This commit is contained in:
parent
0d92c7bfab
commit
3c6702ef8a
2 changed files with 15 additions and 18 deletions
|
@ -1,3 +1,8 @@
|
|||
2011-11-07 Mark Lillibridge <mark.lillibridge@hp.com> (tiny change)
|
||||
|
||||
* mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text):
|
||||
Ensure that mbox format messages end in two newlines (Bug#9974).
|
||||
|
||||
2011-11-06 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* window.el (window-combination-p): Function deleted; its
|
||||
|
|
|
@ -1721,10 +1721,12 @@ not be a new one). It returns non-nil if it got any new messages."
|
|||
(setq all-files (cdr all-files)))
|
||||
;; Put them back in their original order.
|
||||
(setq files (nreverse files))
|
||||
;; In case of brain damage caused by require-final-newline.
|
||||
(goto-char (point-max))
|
||||
(skip-chars-backward " \t\n")
|
||||
(delete-region (point) (point-max))
|
||||
;; Make sure we end with a blank line unless there are
|
||||
;; no messages, as required by mbox format (Bug#9974).
|
||||
(unless (bobp)
|
||||
(while (not (looking-back "\n\n"))
|
||||
(insert "\n")))
|
||||
(setq found (or
|
||||
(rmail-get-new-mail-1 file-name files delete-files)
|
||||
found))))
|
||||
|
@ -2024,22 +2026,12 @@ Value is the size of the newly read mail after conversion."
|
|||
(rmail-unrmail-new-mail-maybe
|
||||
tofile
|
||||
(nth 1 (insert-file-contents tofile))))
|
||||
;; Determine if a pair of newline message separators need
|
||||
;; to be added to the new collection of messages. This is
|
||||
;; the case for all new message collections added to a
|
||||
;; non-empty mail file.
|
||||
(unless (zerop size)
|
||||
(save-restriction
|
||||
(let ((start (point-min)))
|
||||
(widen)
|
||||
(unless (eq start (point-min))
|
||||
(goto-char start)
|
||||
(insert "\n\n")
|
||||
(setq size (+ 2 size))))))
|
||||
(goto-char (point-max))
|
||||
(or (= (preceding-char) ?\n)
|
||||
(zerop size)
|
||||
(insert ?\n))
|
||||
;; Make sure the read-in mbox data properly ends with a
|
||||
;; blank line unless it is of size 0.
|
||||
(unless (zerop size)
|
||||
(while (not (looking-back "\n\n"))
|
||||
(insert "\n")))
|
||||
(if (not (and rmail-preserve-inbox (string= file tofile)))
|
||||
(setq delete-files (cons tofile delete-files)))))
|
||||
(message "")
|
||||
|
|
Loading…
Add table
Reference in a new issue