update.
[elisp/flim.git] / mel.el
diff --git a/mel.el b/mel.el
index f128321..82de230 100644 (file)
--- a/mel.el
+++ b/mel.el
@@ -2,7 +2,7 @@
 
 ;; Copyright (C) 1995,1996,1997,1998,1999 Free Software Foundation, Inc.
 
-;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
+;; Author: MORIOKA Tomohiko <tomo@m17n.org>
 ;; Created: 1995/6/25
 ;; Keywords: MIME, Base64, Quoted-Printable, uuencode, gzip64
 
@@ -26,6 +26,7 @@
 ;;; Code:
 
 (require 'mime-def)
+(require 'alist)
 (require 'path-util)
 
 (defcustom mime-encoding-list
@@ -85,10 +86,10 @@ Content-Transfer-Encoding for it."
 (mel-define-method mime-encode-region (start end (nil "7bit")))
 (mel-define-method mime-decode-region (start end (nil "7bit")))
 (mel-define-method-function (mime-insert-encoded-file filename (nil "7bit"))
-                           'insert-file-contents-as-binary)
+                           'binary-insert-file-contents)
 (mel-define-method-function (mime-write-decoded-region
                             start end filename (nil "7bit"))
-                           'write-region-as-binary)
+                           'binary-write-region)
 
 (mel-define-backend "8bit" ("7bit"))
 
@@ -117,7 +118,7 @@ mmencode included in metamail or XEmacs package)."
     (insert (base64-encode-string
             (with-temp-buffer
               (set-buffer-multibyte nil)
-              (insert-file-contents-as-binary filename)
+              (binary-insert-file-contents filename)
               (buffer-string))))
     (or (bolp) (insert ?\n)))
     
@@ -222,8 +223,9 @@ the STRING by its value."
 (defun Q-encoded-text-length (string &optional mode)
   (let ((l 0)(i 0)(len (length string)) chr)
     (while (< i len)
-      (setq chr (elt string i))
-      (if (Q-encoding-printable-char-p chr mode)
+      (setq chr (aref string i))
+      (if (or (Q-encoding-printable-char-p chr mode)
+             (eq chr ? ))
          (setq l (+ l 1))
        (setq l (+ l 3)))
       (setq i (+ i 1)))