summaryrefslogtreecommitdiff
path: root/lisp/gnus/gnus-msg.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2014-02-06 05:43:50 +0000
committerKatsumi Yamaoka <yamaoka@jpl.org>2014-02-06 05:43:50 +0000
commitcf8a1938e36b8a8617870b41d051bfbd26350910 (patch)
treed6eeb3299738a21e082e0476c792a5d054591ea7 /lisp/gnus/gnus-msg.el
parent29127376a56c805d846de564c3c3ece23e263b8f (diff)
downloademacs-cf8a1938e36b8a8617870b41d051bfbd26350910.tar.gz
lisp/gnus/gnus-msg.el (gnus-summary-cancel-article): Allow cancelling articles that have a differing From address (bug#10808)
Diffstat (limited to 'lisp/gnus/gnus-msg.el')
-rw-r--r--lisp/gnus/gnus-msg.el7
1 files changed, 4 insertions, 3 deletions
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index 2ff70071b1c..1c8635c5992 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -862,7 +862,7 @@ post using the current select method."
(let ((message-post-method
`(lambda (arg)
(gnus-post-method (eq ',symp 'a) ,gnus-newsgroup-name)))
- (user-mail-address user-mail-address))
+ (custom-address user-mail-address))
(dolist (article (gnus-summary-work-articles n))
(when (gnus-summary-select-article t nil nil article)
;; Pretend that we're doing a followup so that we can see what
@@ -872,12 +872,13 @@ post using the current select method."
(gnus-summary-followup nil)
(let ((from (message-fetch-field "from")))
(when from
- (setq user-mail-address
+ (setq custom-address
(car (mail-header-parse-address from)))))
(kill-buffer (current-buffer))))
;; Now cancel the article using the From header we got.
(when (gnus-eval-in-buffer-window gnus-original-article-buffer
- (message-cancel-news))
+ (let ((user-mail-address (or custom-address user-mail-address)))
+ (message-cancel-news)))
(gnus-summary-mark-as-read article gnus-canceled-mark)
(gnus-cache-remove-article 1))
(gnus-article-hide-headers-if-wanted))