[PATCH] emacs: Make the part content available to the mm-inline* checks.
David Edmondson
dme at dme.org
Wed Jan 18 09:33:13 PST 2012
The `mm-inlinable-p' and `mm-inlined-p' functions work better if they
have access to the data of the relevant part, so load that content
before calling either function.
This fixes the display of attached image/jpeg parts, for example.
---
I dropped this on the floor after discussing it in #notmuch, sorry!
emacs/notmuch-show.el | 19 +++++++++++--------
1 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index 2df8d3b..71309c3 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -330,14 +330,17 @@ current buffer, if possible."
(with-temp-buffer
(let* ((charset (plist-get part :content-charset))
(handle (mm-make-handle (current-buffer) `(,content-type (charset . ,charset)))))
- (if (and (mm-inlinable-p handle)
- (mm-inlined-p handle))
- (let ((content (notmuch-show-get-bodypart-content msg part nth)))
- (insert content)
- (set-buffer display-buffer)
- (mm-display-part handle)
- t)
- nil)))))
+ (insert (notmuch-show-get-bodypart-content msg part nth))
+ (when (and (mm-inlinable-p handle)
+ (mm-inlined-p handle))
+ (set-buffer display-buffer)
+
+ ;; Nonsense required to have the new gnus `shr' HTML
+ ;; display code work.
+ (let ((gnus-inhibit-images nil))
+ (makunbound 'gnus-summary-buffer) ; Blech.
+ (mm-display-part handle))
+ t)))))
(defvar notmuch-show-multipart/alternative-discouraged
'(
--
1.7.8.3
More information about the notmuch
mailing list