diff options
author | Katsumi Yamaoka <yamaoka@jpl.org> | 2017-05-26 08:07:58 +0000 |
---|---|---|
committer | Katsumi Yamaoka <yamaoka@jpl.org> | 2017-05-26 08:07:58 +0000 |
commit | 4de0737c9b5ae8939763ad70085f02e1eace4032 (patch) | |
tree | b7ed18001f211f4ae107948ee81d1aa6aeb007ff | |
parent | 4c4a1b3217570dd306c7ad3ee273a9317ab29134 (diff) | |
download | emacs-4de0737c9b5ae8939763ad70085f02e1eace4032.tar.gz |
Work for application/x-tar-gz and image/svg+xml
;; Try inlining the attachment in the article <87wp94dzj6.fsf@gmail.com>
;; of bug#27078 in the Emacs bug list using Gnus.
* lisp/gnus/mm-archive.el (mm-archive-decoders):
Add a decoder for application/x-tar-gz.
(mm-dissect-archive): Error out if a decoder is not found.
* lisp/gnus/mm-decode.el (mm-get-image): Allow image/svg+xml.
-rw-r--r-- | lisp/gnus/mm-archive.el | 11 | ||||
-rw-r--r-- | lisp/gnus/mm-decode.el | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/lisp/gnus/mm-archive.el b/lisp/gnus/mm-archive.el index 5ac8761f6b5..103cc89c357 100644 --- a/lisp/gnus/mm-archive.el +++ b/lisp/gnus/mm-archive.el @@ -30,15 +30,18 @@ '(("application/ms-tnef" t "tnef" "-f" "-" "-C") ("application/zip" nil "unzip" "-j" "-x" "%f" "-d") ("application/x-gtar-compressed" nil "tar" "xzf" "-" "-C") + ("application/x-tar-gz" nil "tar" "xzf" "-" "-C") ("application/x-tar" nil "tar" "xf" "-" "-C"))) (defun mm-archive-decoders () mm-archive-decoders) (defun mm-dissect-archive (handle) - (let ((decoder (cddr (assoc (car (mm-handle-type handle)) - mm-archive-decoders))) - (dir (make-temp-file - (expand-file-name "emm." mm-tmp-directory) 'dir))) + (let* ((type (car (mm-handle-type handle))) + (decoder (cddr (assoc type mm-archive-decoders))) + dir) + (unless decoder + (error "No decoder found for %s" type)) + (setq dir (make-temp-file (expand-file-name "emm." mm-tmp-directory) 'dir)) (set-file-modes dir #o700) (unwind-protect (progn diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el index 5b8aeb3ca31..c6a0be36c40 100644 --- a/lisp/gnus/mm-decode.el +++ b/lisp/gnus/mm-decode.el @@ -1555,6 +1555,8 @@ be determined." "xbm") ((equal type "x-portable-bitmap") "pbm") + ((equal type "svg+xml") + "svg") (t type))) (or (mm-handle-cache handle) (mm-with-unibyte-buffer |