aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancesco Potortì2003-02-20 08:56:08 +0000
committerFrancesco Potortì2003-02-20 08:56:08 +0000
commit89dac01fd8a668f13d467fe22bdb413d53f5a937 (patch)
tree63263172ed9f7611523493d0af8573bba42a88d9
parentf39e98ea0ef7700a059080bd2a7c204aba4a55fe (diff)
downloademacs-89dac01fd8a668f13d467fe22bdb413d53f5a937.tar.gz
emacs-89dac01fd8a668f13d467fe22bdb413d53f5a937.zip
(unforward-rmail-message): Allow nested
unforwarding, that is, preserve old Forwarded-From/Date headers.
-rw-r--r--lisp/mail/undigest.el22
1 files changed, 16 insertions, 6 deletions
diff --git a/lisp/mail/undigest.el b/lisp/mail/undigest.el
index d5efa06df71..1890353c33b 100644
--- a/lisp/mail/undigest.el
+++ b/lisp/mail/undigest.el
@@ -232,13 +232,18 @@ following the containing message."
232 ;; If we are in a summary buffer, switch to the Rmail buffer. 232 ;; If we are in a summary buffer, switch to the Rmail buffer.
233 (unwind-protect 233 (unwind-protect
234 (with-current-buffer rmail-buffer 234 (with-current-buffer rmail-buffer
235 (narrow-to-region (rmail-msgbeg rmail-current-message)
236 (rmail-msgend rmail-current-message))
237 (goto-char (point-min)) 235 (goto-char (point-min))
236 (narrow-to-region (point)
237 (save-excursion (search-forward "\n\n") (point)))
238 (let ((buffer-read-only nil) 238 (let ((buffer-read-only nil)
239 (forwarded-from (mail-fetch-field "From")) 239 (old-fwd-from (mail-fetch-field "Forwarded-From" nil nil t))
240 (forwarded-date (mail-fetch-field "Date")) 240 (old-fwd-date (mail-fetch-field "Forwarded-Date" nil nil t))
241 (fwd-from (mail-fetch-field "From"))
242 (fwd-date (mail-fetch-field "Date"))
241 beg end prefix forward-msg) 243 beg end prefix forward-msg)
244 (narrow-to-region (rmail-msgbeg rmail-current-message)
245 (rmail-msgend rmail-current-message))
246 (goto-char (point-min))
242 (cond ((re-search-forward rmail-forward-separator-regex nil t) 247 (cond ((re-search-forward rmail-forward-separator-regex nil t)
243 (forward-line 1) 248 (forward-line 1)
244 (skip-chars-forward "\n") 249 (skip-chars-forward "\n")
@@ -274,8 +279,13 @@ following the containing message."
274 (narrow-to-region (point) (point)) 279 (narrow-to-region (point) (point))
275 (insert rmail-mail-separator) 280 (insert rmail-mail-separator)
276 (narrow-to-region (point) (point)) 281 (narrow-to-region (point) (point))
277 (insert "Forwarded-From: " forwarded-from "\n") 282 (while old-fwd-from
278 (insert "Forwarded-Date: " forwarded-date "\n") 283 (insert "Forwarded-From: " (car old-fwd-from) "\n")
284 (insert "Forwarded-Date: " (car old-fwd-date) "\n")
285 (setq old-fwd-from (cdr old-fwd-from))
286 (setq old-fwd-date (cdr old-fwd-date)))
287 (insert "Forwarded-From: " fwd-from "\n")
288 (insert "Forwarded-Date: " fwd-date "\n")
279 (insert forward-msg) 289 (insert forward-msg)
280 (save-restriction 290 (save-restriction
281 (goto-char (point-min)) 291 (goto-char (point-min))