mu4e-view-gnus: better cleanup buffer

avoid seeing leftover MIME-parts of older buffers.
This commit is contained in:
Dirk-Jan C. Binnema
2021-04-25 13:44:57 +03:00
parent 704e631e8d
commit 15ab2c8d3a

View File

@ -50,6 +50,8 @@
(defun mu4e~view-gnus (msg) (defun mu4e~view-gnus (msg)
"View MSG using Gnus' article mode." "View MSG using Gnus' article mode."
(when gnus-article-buffer
(kill-buffer gnus-article-buffer))
(with-current-buffer (get-buffer-create gnus-article-buffer) (with-current-buffer (get-buffer-create gnus-article-buffer)
(let ((inhibit-read-only t)) (let ((inhibit-read-only t))
(erase-buffer) (erase-buffer)
@ -120,14 +122,13 @@ buffer BUF."
(mu4e-view-mode) (mu4e-view-mode)
(run-hooks 'gnus-article-decode-hook) (run-hooks 'gnus-article-decode-hook)
(gnus-article-prepare-display) (gnus-article-prepare-display)
(setq mu4e~gnus-article-mime-handles gnus-article-mime-handles) (setq mu4e~gnus-article-mime-handles gnus-article-mime-handles
(mu4e~view-activate-urls) gnus-article-decoded-p gnus-article-decode-hook)
(setq gnus-article-decoded-p gnus-article-decode-hook)
(set-buffer-modified-p nil) (set-buffer-modified-p nil)
(add-hook 'kill-buffer-hook #'mu4e~view-kill-buffer-hook-function))) (add-hook 'kill-buffer-hook #'mu4e~view-kill-mime-handles)))
(defun mu4e~view-kill-buffer-hook-function () (defun mu4e~view-kill-mime-handles ()
;; cleanup the mm-* buffers that the view spawns "Kill cached MIME-handles, if any."
(when mu4e~gnus-article-mime-handles (when mu4e~gnus-article-mime-handles
(mm-destroy-parts mu4e~gnus-article-mime-handles) (mm-destroy-parts mu4e~gnus-article-mime-handles)
(setq mu4e~gnus-article-mime-handles nil))) (setq mu4e~gnus-article-mime-handles nil)))