summaryrefslogtreecommitdiff
path: root/lisp/gnus
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/gnus')
-rw-r--r--lisp/gnus/mm-archive.el11
-rw-r--r--lisp/gnus/mm-decode.el2
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