diff options
Diffstat (limited to 'lisp/mail/feedmail.el')
-rw-r--r-- | lisp/mail/feedmail.el | 78 |
1 files changed, 38 insertions, 40 deletions
diff --git a/lisp/mail/feedmail.el b/lisp/mail/feedmail.el index 97d20cca151..165aafae1f7 100644 --- a/lisp/mail/feedmail.el +++ b/lisp/mail/feedmail.el @@ -2511,22 +2511,20 @@ mapped to mostly alphanumerics for safety." feedmail-force-binary-write) 'no-conversion coding-system-for-write))) - (unwind-protect - (progn - (insert fcc) - (unless feedmail-nuke-bcc-in-fcc - (if bcc-holder (insert bcc-holder)) - (if resent-bcc-holder - (insert resent-bcc-holder))) - - (run-hooks 'feedmail-before-fcc-hook) - - (when feedmail-nuke-body-in-fcc - (goto-char eoh-marker) - (if (natnump feedmail-nuke-body-in-fcc) - (forward-line feedmail-nuke-body-in-fcc)) - (delete-region (point) (point-max))) - (mail-do-fcc eoh-marker)))))) + (insert fcc) + (unless feedmail-nuke-bcc-in-fcc + (if bcc-holder (insert bcc-holder)) + (if resent-bcc-holder + (insert resent-bcc-holder))) + + (run-hooks 'feedmail-before-fcc-hook) + + (when feedmail-nuke-body-in-fcc + (goto-char eoh-marker) + (if (natnump feedmail-nuke-body-in-fcc) + (forward-line feedmail-nuke-body-in-fcc)) + (delete-region (point) (point-max))) + (mail-do-fcc eoh-marker)))) ;; User bailed out of one-last-look. (if feedmail-queue-runner-is-active (throw 'skip-me-q 'skip-me-q) @@ -3046,30 +3044,30 @@ been weeded out." (address-blob) (this-line) (this-line-end)) - (unwind-protect - (with-current-buffer (get-buffer-create " *FQM scratch*") - (erase-buffer) - (insert-buffer-substring message-buffer header-start header-end) - (goto-char (point-min)) - (let ((case-fold-search t)) - (while (re-search-forward addr-regexp (point-max) t) - (replace-match "") - (setq this-line (match-beginning 0)) - (forward-line 1) - ;; get any continuation lines - (while (and (looking-at "^[ \t]+") (< (point) (point-max))) - (forward-line 1)) - (setq this-line-end (point-marker)) - ;; only keep if we don't have it already - (setq address-blob - (mail-strip-quoted-names (buffer-substring-no-properties this-line this-line-end))) - (while (string-match "\\([, \t\n\r]*\\)\\([^, \t\n\r]+\\)" address-blob) - (setq simple-address (substring address-blob (match-beginning 2) (match-end 2))) - (setq address-blob (replace-match "" t t address-blob)) - (if (not (member simple-address address-list)) - (push simple-address address-list))) - )) - (kill-buffer nil))) + + (with-current-buffer (get-buffer-create " *FQM scratch*") + (erase-buffer) + (insert-buffer-substring message-buffer header-start header-end) + (goto-char (point-min)) + (let ((case-fold-search t)) + (while (re-search-forward addr-regexp (point-max) t) + (replace-match "") + (setq this-line (match-beginning 0)) + (forward-line 1) + ;; get any continuation lines + (while (and (looking-at "^[ \t]+") (< (point) (point-max))) + (forward-line 1)) + (setq this-line-end (point-marker)) + ;; only keep if we don't have it already + (setq address-blob + (mail-strip-quoted-names (buffer-substring-no-properties this-line this-line-end))) + (while (string-match "\\([, \t\n\r]*\\)\\([^, \t\n\r]+\\)" address-blob) + (setq simple-address (substring address-blob (match-beginning 2) (match-end 2))) + (setq address-blob (replace-match "" t t address-blob)) + (if (not (member simple-address address-list)) + (push simple-address address-list))) + )) + (kill-buffer nil)) (identity address-list))) |