tm 7.80.
[elisp/tm.git] / tm-play.el
index 7d0e768..7e28154 100644 (file)
@@ -1,32 +1,29 @@
-;;;
 ;;; tm-play.el --- decoder for tm-view.el
-;;;
-;;; Copyright (C) 1995 Free Software Foundation, Inc.
-;;; Copyright (C) 1994 .. 1996 MORIOKA Tomohiko
-;;;
-;;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
-;;; Maintainer: MORIOKA Tomohiko <morioka@jaist.ac.jp>
-;;; Created: 1995/9/26 (separated from tm-view.el)
-;;; Version:
-;;;    $Id: tm-play.el,v 7.20 1996/07/15 14:04:46 morioka Exp $
-;;; Keywords: mail, news, MIME, multimedia
-;;;
-;;; This file is part of tm (Tools for MIME).
-;;;
-;;; This program is free software; you can redistribute it and/or
-;;; modify it under the terms of the GNU General Public License as
-;;; published by the Free Software Foundation; either version 2, or
-;;; (at your option) any later version.
-;;;
-;;; This program is distributed in the hope that it will be useful,
-;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;;; General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with This program.  If not, write to the Free Software
-;;; Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-;;;
+
+;; Copyright (C) 1994,1995,1996 Free Software Foundation, Inc.
+
+;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
+;; Created: 1995/9/26 (separated from tm-view.el)
+;; Version: $Id: tm-play.el,v 7.26 1996/08/30 16:42:15 morioka Exp $
+;; Keywords: mail, news, MIME, multimedia
+
+;; This file is part of tm (Tools for MIME).
+
+;; This program is free software; you can redistribute it and/or
+;; modify it under the terms of the GNU General Public License as
+;; published by the Free Software Foundation; either version 2, or (at
+;; your option) any later version.
+
+;; This program is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program; see the file COPYING.  If not, write to
+;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
 ;;; Code:
 
 (require 'tm-view)
                ))
          ))))
 
-
 (defun mime-article/decode-content (cinfo)
   (let ((beg (mime::content-info/point-min cinfo))
        (end (mime::content-info/point-max cinfo))
-       (ctype (mime::content-info/type cinfo))
+       (ctype (or (mime::content-info/type cinfo) "text/plain"))
        (params (mime::content-info/parameters cinfo))
        (encoding (mime::content-info/encoding cinfo))
        )
     (if (< (point-max) end)
        (setq end (point-max))
       )
-    (if ctype
-       (let (method cal ret)
-         (setq cal (append (list (cons 'type ctype)
-                                 (cons 'encoding encoding)
-                                 (cons 'major-mode major-mode)
-                                 )
-                           params))
-         (if mime-viewer/decoding-mode
-             (setq cal (cons
-                        (cons 'mode mime-viewer/decoding-mode)
-                        cal))
-           )
-         (setq ret (mime/get-content-decoding-alist cal))
-         (setq method (cdr (assoc 'method ret)))
-         (cond ((and (symbolp method)
-                     (fboundp method))
-                (funcall method beg end ret)
-                )
-               ((and (listp method)(stringp (car method)))
-                (mime-article/start-external-method-region beg end ret)
-                )
-               (t
-                (mime-article/show-output-buffer
-                 "No method are specified for %s\n" ctype)
-                ))
-         ))
+    (let (method cal ret)
+      (setq cal (list* (cons 'type ctype)
+                      (cons 'encoding encoding)
+                      (cons 'major-mode major-mode)
+                      params))
+      (if mime-viewer/decoding-mode
+         (setq cal (cons
+                    (cons 'mode mime-viewer/decoding-mode)
+                    cal))
+       )
+      (setq ret (mime/get-content-decoding-alist cal))
+      (setq method (cdr (assq 'method ret)))
+      (cond ((and (symbolp method)
+                 (fboundp method))
+            (funcall method beg end ret)
+            )
+           ((and (listp method)(stringp (car method)))
+            (mime-article/start-external-method-region beg end ret)
+            )
+           (t
+            (mime-article/show-output-buffer
+             "No method are specified for %s\n" ctype)
+            ))
+      )
     ))
 
 (defun mime/get-content-decoding-alist (al)
                (rfc822/strip-quoted-string (cdr ret))
              )
            (if (setq ret
-                     (or (rfc822/get-field-body "Content-Description")
-                         (rfc822/get-field-body "Subject")
-                         ))
+                     (std11-find-field-body '("Content-Description"
+                                              "Subject")))
                (if (or (string-match mime-viewer/file-name-regexp-1 ret)
                        (string-match mime-viewer/file-name-regexp-2 ret))
                    (substring ret (match-beginning 0)(match-end 0))