aboutsummaryrefslogtreecommitdiffhomepage
path: root/emacs
diff options
context:
space:
mode:
authorGravatar David Edmondson <dme@dme.org>2012-01-19 09:34:07 +0000
committerGravatar David Bremner <bremner@debian.org>2012-01-26 08:10:55 -0400
commit63342a3c06cca53720f8be2ae8c4cf2c66d137f1 (patch)
tree175fbf85aba9802d7925506b3e634c97c3e7c5c3 /emacs
parente6e10b82c98fbb68db45a57d2167af6032934ebc (diff)
emacs: Make the part content available to `mm-inlinable-p'.
The `mm-inlinable-p' function works better if it has access to the data of the relevant part, so load that content before calling it. Don't load the content for parts that the user has indicated no desire to inline. This fixes the display of attached image/jpeg parts, for example.
Diffstat (limited to 'emacs')
-rw-r--r--emacs/notmuch-show.el17
1 files changed, 9 insertions, 8 deletions
diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index e6a5b31f..c37479a5 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -429,14 +429,15 @@ 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)))))
+ ;; If the user wants the part inlined, insert the content and
+ ;; test whether we are able to inline it (which includes both
+ ;; capability and suitability tests).
+ (when (mm-inlined-p handle)
+ (insert (notmuch-show-get-bodypart-content msg part nth))
+ (when (mm-inlinable-p handle)
+ (set-buffer display-buffer)
+ (mm-display-part handle)
+ t))))))
(defvar notmuch-show-multipart/alternative-discouraged
'(