summaryrefslogtreecommitdiff
path: root/lisp/gnus
diff options
context:
space:
mode:
authorEric Abrahamsen <eric@ericabrahamsen.net>2020-01-18 11:08:11 -0800
committerEric Abrahamsen <eric@ericabrahamsen.net>2020-01-18 11:08:11 -0800
commit447bb1313a6abc07776d93ee78cd976ab43856e5 (patch)
tree9b52c4d9ac00cd0e98233b995bdacec0c038f2ef /lisp/gnus
parenta4610c3dca09c526d7ca0647fe4a2abd08d081e7 (diff)
downloademacs-447bb1313a6abc07776d93ee78cd976ab43856e5.tar.gz
Ensure that gnus-summary-attach-article finds the right articles
* lisp/gnus/gnus-msg.el (gnus-summary-attach-article): Before iterating over the articles to attach, first close any open article. Using `set-buffer' required `gnus-summary-select-article' to re-set the buffer every time, meaning we never got off the original article.
Diffstat (limited to 'lisp/gnus')
-rw-r--r--lisp/gnus/gnus-msg.el11
1 files changed, 6 insertions, 5 deletions
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index 466a62713ed..daaea3980b5 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -1985,13 +1985,14 @@ process-mark several articles, they will all be attached."
buffers t nil nil (car buffers))))
(gnus-summary-mail-other-window)
(setq destination (current-buffer)))
+ (gnus-summary-expand-window)
(gnus-summary-iterate n
(gnus-summary-select-article)
- (set-buffer destination)
- ;; Attach at the end of the buffer.
- (save-excursion
- (goto-char (point-max))
- (message-forward-make-body-mime gnus-original-article-buffer)))
+ (with-current-buffer destination
+ ;; Attach at the end of the buffer.
+ (save-excursion
+ (goto-char (point-max))
+ (message-forward-make-body-mime gnus-original-article-buffer))))
(gnus-configure-windows 'message t)))
(provide 'gnus-msg)