Mercurial > emacs
changeset 21195:169fde4a67c1
(rmail-clear-headers): Make sure an empty line
still separates the headers from the body.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 16 Mar 1998 18:11:20 +0000 |
parents | 7a7950ffa79b |
children | 0ad514a44245 |
files | lisp/mail/rmail.el |
diffstat | 1 files changed, 30 insertions(+), 29 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/mail/rmail.el Mon Mar 16 08:05:58 1998 +0000 +++ b/lisp/mail/rmail.el Mon Mar 16 18:11:20 1998 +0000 @@ -1657,35 +1657,36 @@ Otherwise, if `rmail-displayed-headers' is non-nil, delete all header fields *except* those whose names match that regexp. Otherwise, delete all header fields whose names match `rmail-ignored-headers'." - (if (search-forward "\n\n" nil t) - (let ((case-fold-search t) - (buffer-read-only nil)) - (if (and rmail-displayed-headers (null ignored-headers)) - (save-restriction - (narrow-to-region (point-min) (point)) - (let (lim next) - (goto-char (point-min)) - (while (and (not (eobp)) - (save-excursion - (if (re-search-forward "\n[^ \t]" nil t) - (setq lim (match-beginning 0) - next (1+ lim)) - (setq lim nil next (point-max))))) - (if (save-excursion - (re-search-forward rmail-displayed-headers lim t)) - (goto-char next) - (delete-region (point) next)))) - (goto-char (point-min))) - (or ignored-headers (setq ignored-headers rmail-ignored-headers)) - (save-restriction - (narrow-to-region (point-min) (point)) - (while (progn - (goto-char (point-min)) - (re-search-forward ignored-headers nil t)) - (beginning-of-line) - (delete-region (point) - (progn (re-search-forward "\n[^ \t]") - (1- (point)))))))))) + (when (search-forward "\n\n" nil t) + (forward-char -1) + (let ((case-fold-search t) + (buffer-read-only nil)) + (if (and rmail-displayed-headers (null ignored-headers)) + (save-restriction + (narrow-to-region (point-min) (point)) + (let (lim next) + (goto-char (point-min)) + (while (and (not (eobp)) + (save-excursion + (if (re-search-forward "\n[^ \t]" nil t) + (setq lim (match-beginning 0) + next (1+ lim)) + (setq lim nil next (point-max))))) + (if (save-excursion + (re-search-forward rmail-displayed-headers lim t)) + (goto-char next) + (delete-region (point) next)))) + (goto-char (point-min))) + (or ignored-headers (setq ignored-headers rmail-ignored-headers)) + (save-restriction + (narrow-to-region (point-min) (point)) + (while (progn + (goto-char (point-min)) + (re-search-forward ignored-headers nil t)) + (beginning-of-line) + (delete-region (point) + (progn (re-search-forward "\n[^ \t]") + (1- (point)))))))))) (defun rmail-msg-is-pruned () (rmail-maybe-set-message-counters)