* gnus.el: Fixed all the doc strings to match the FSF convetions.
[gnus] / lisp / base64.el
index 0c562d1..65c458d 100644 (file)
@@ -63,7 +63,7 @@ base64-encoder-program.")
     ( ?w . 48) ( ?x . 49) ( ?y . 50) ( ?z . 51) ( ?0 . 52) ( ?1 . 53)
     ( ?2 . 54) ( ?3 . 55) ( ?4 . 56) ( ?5 . 57) ( ?6 . 58) ( ?7 . 59)
     ( ?8 . 60) ( ?9 . 61) ( ?+ . 62) ( ?/ . 63)
-   ))
+    ))
 
 (defvar base64-alphabet-decoding-vector
   (let ((v (make-vector 123 nil))
@@ -73,9 +73,13 @@ base64-encoder-program.")
       (setq p (cdr p)))
     v))
 
+(defvar base64-binary-coding-system 'binary)
+
 (defun base64-run-command-on-region (start end output-buffer command
                                           &rest arg-list)
-  (let ((tempfile nil) status errstring default-process-coding-system)
+  (let ((tempfile nil) status errstring default-process-coding-system 
+       (coding-system-for-write base64-binary-coding-system)
+       (coding-system-for-read base64-binary-coding-system))
     (unwind-protect
        (progn
          (setq tempfile (make-temp-name "base64"))
@@ -94,9 +98,8 @@ base64-encoder-program.")
                     (setq errstring (buffer-string))
                     (kill-buffer nil)
                     (cons status errstring)))))
-      (condition-case ()
-         (delete-file tempfile)
-       (error nil)))))
+      (ignore-errors
+       (delete-file tempfile)))))
 
 (if (string-match "XEmacs" emacs-version)
     (defalias 'base64-insert-char 'insert-char)
@@ -104,7 +107,8 @@ base64-encoder-program.")
     (if (or (null buffer) (eq buffer (current-buffer)))
        (insert-char char count)
       (with-current-buffer buffer
-       (insert-char char count)))))
+       (insert-char char count))))
+  (setq base64-binary-coding-system 'no-conversion))
 
 (defun base64-decode-region (start end)
   (interactive "r")
@@ -122,9 +126,9 @@ base64-encoder-program.")
          (if base64-decoder-program
              (let* ((binary-process-output t) ; any text already has CRLFs
                     (status (apply 'base64-run-command-on-region
-                                  start end work-buffer
-                                  base64-decoder-program
-                                  base64-decoder-switches)))
+                                   start end work-buffer
+                                   base64-decoder-program
+                                   base64-decoder-switches)))
                (if (not (eq status t))
                    (error "%s" (cdr status))))
            (goto-char start)
@@ -135,7 +139,7 @@ base64-encoder-program.")
               ((> (skip-chars-forward base64-alphabet end) 0)
                (setq lim (point))
                (while (< inputpos lim)
-                 (setq bits (+ bits 
+                 (setq bits (+ bits
                                (aref base64-alphabet-decoding-vector
                                      (char-int (char-after inputpos)))))
                  (setq counter (1+ counter)
@@ -143,7 +147,7 @@ base64-encoder-program.")
                  (cond ((= counter 4)
                         (base64-insert-char (lsh bits -16) 1 nil work-buffer)
                         (base64-insert-char (logand (lsh bits -8) 255) 1 nil
-                                        work-buffer)
+                                            work-buffer)
                         (base64-insert-char (logand bits 255) 1 nil
                                             work-buffer)
                         (setq bits 0 counter 0))
@@ -264,8 +268,9 @@ base64-encoder-program.")
     (delete-region (point-max) (point))
     (prog1
        (buffer-string)
-      (kill-buffer (current-buffer)))))  
+      (kill-buffer (current-buffer)))))
 
 (fset 'base64-decode-string 'base64-decode)
+(fset 'base64-encode-string 'base64-encode)
 
 (provide 'base64)