lisp/gnus/gnus-msg.el (gnus-summary-cancel-article): Allow cancelling articles that have a differing From address (bug#10808)

This commit is contained in:
Lars Ingebrigtsen 2014-02-06 05:43:50 +00:00 committed by Katsumi Yamaoka
parent 29127376a5
commit cf8a1938e3
2 changed files with 10 additions and 3 deletions

View file

@ -1,3 +1,9 @@
2014-02-06 Lars Ingebrigtsen <larsi@gnus.org>
* gnus-msg.el (gnus-summary-cancel-article): `user-mail-address' is
buffer-local in some buffers, so bind it explicitly in the buffer we're
trying to cancel the article in (bug#10808).
2014-02-05 Lars Ingebrigtsen <larsi@gnus.org>
* gnus-int.el (gnus-request-accept-article): Doc fix.

View file

@ -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))