[Mew-dist 11992] base64 encoding error
Masaki KONUMA
konuma at example.com
2000年 1月 5日 (水) 15:45:41 JST
From: Kazu Yamamoto (山本和彦) <kazu at example.com>
> Emacs で実装されている base64 関係の関数を積極的に使うようにした Mew
> 1.94.1+ を alpha リリースします。
(setq estr "GyRCJEcjMiVQJSQlSEo4O3okckk9PCgkNyQ/JCQbKEI")
--> "GyRCJEcjMiVQJSQlSEo4O3okckk9PCgkNyQ/JCQbKEI"
(mew-header-decode "ISO-2022-JP" "B" estr)
--> Wrong type argument: stringp, nil
となります。
不正な base64 string に対して base64-decode-string が nil を返すためです。
(base64-decode-string estr)
--> nil
パッチを送ります。
-- 小沼雅樹
-------------- next part --------------
--- ../mew-1.95b16/mew-bq.el Fri Nov 12 14:37:25 1999
+++ mew-bq.el Wed Jan 5 15:05:48 2000
@@ -80,7 +80,9 @@
((and (null hcs) (not (mew-case-equal charset mew-us-ascii)))
mew-error-unknown-charset)
(fun ;; hcs may be nil
- (setq ret (mew-cs-decode-string (funcall fun estr) hcs))
+ (setq ret (mew-cs-decode-string
+ (or (funcall fun estr) mew-error-illegal-base64)
+ hcs))
(mew-header-sanity-check-string ret))
(t
estr))))
@@ -142,7 +144,7 @@
(not (zerop (logand len 3)))
(< padlen 0)
(> padlen 2))
- mew-error-illegal-base64) ;; return value
+ nil) ;; return value
((zerop (setq len (- len padlen))) "")
(t
(setq ret (make-string (/ (* len 3) 4) ?a))
Mew-dist メーリングリストの案内