[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
w3m-form
で
lisp error
- From: HAYASHI Chifumi (
林 潜史
) <chifumi@xxxxxxxxxxx>
- Date: Mon, 11 Mar 2002 15:05:01 +0900 (JST)
- X-ml-name: emacs-w3m
- X-mail-count: 02936
林と申します。
Mew で html 添付ファイルの表示に emacs-w3m を使っていますが、
いつの頃からか
Wrong type argument: stringp, nil
というエラーが出て表示できない *ことがある* のが気になっていました。
(たとえばこのメールに添付のもの)
# 現在は mew 3.0.54 + w3m_el-1.2.5 ですが、いつからかはっきり覚えていません。
Backtrace を見てみると
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
string-match("\\`\\(\\([^:/?#]+\\):\\)?\\(//\\([^/?#]*\\)\\)?\\([^?#]*\\)\\(\\?\\([^#]*\\)\\)?\\(#\\(.*\\)\\)?\\'" nil)
(progn (string-match w3m-url-components-regexp w3m-current-url) (substring w3m-current-url 0 (or ... ...)))
(or action (progn (string-match w3m-url-components-regexp w3m-current-url) (substring w3m-current-url 0 ...)))
(w3m-form-new (or method "get") (or action (progn ... ...)) nil accept-charset)
(cons (w3m-form-new (or method "get") (or action ...) nil accept-charset) forms)
(setq forms (cons (w3m-form-new ... ... nil accept-charset) forms))
(let (action method accept-charset charset) (skip-chars-forward "
\f\n") (while (cond ... ... ... ... ... ...) (goto-char ...) (skip-chars-forward "
\f\n")) (skip-chars-forward "^>") (forward-char) (if accept-charset (setq accept-charset ...) (when ... ...)) (setq forms (cons ... forms)))
(w3m-parse-attributes (action (method :case-ignore) (accept-charset :case-ignore) (charset :case-ignore)) (if accept-charset (setq accept-charset ...) (when ... ...)) (setq forms (cons ... forms)))
(cond ((string= tag "img") (w3m-parse-attributes ... ...)) (t (w3m-parse-attributes ... ... ...) (while ... ... ... ...)))
(while (re-search-forward (w3m-tag-regexp-of "form" "img") nil t) (setq tag (downcase ...)) (goto-char (match-end 1)) (cond (... ...) (t ... ...)))
(let ((case-fold-search t) forms tag) (goto-char (point-min)) (while (re-search-forward ... nil t) (setq tag ...) (goto-char ...) (cond ... ...)) forms)
w3m-form-parse-forms()
(nreverse (w3m-form-parse-forms))
(or (when (w3m-cache-available-p w3m-current-url) (let ... ...)) (nreverse (w3m-form-parse-forms)))
w3m-form-parse-buffer()
w3m-rendering-buffer-1(iso-2022-7bit)
w3m-rendering-multibyte-buffer()
w3m-region(1 700)
mew-mime-text/html-w3m(#<buffer *mew cache*0> 884 1583 (("charset" "iso-2022-jp")))
mew-mime-part(#<buffer *mew cache*0> [message 1 581 nil ("Message/Rfc822") nil nil nil nil [multi 582 1632 nil ("Multipart/Mixed" ...) "7bit" nil nil nil [single 704 709 nil ... "7bit" nil nil nil] [single 884 1583 nil ... "7bit" nil nil ...]]] (2))
mew-summary-display-part(#<buffer *mew cache*0> (2))
mew-summary-display(nil)
mew-summary-display-down(nil)
call-interactively(mew-summary-display-down)
ということなので、下記の対症療法でエラーは出なくなりましたが、
こういう対応方法で良いものでしょうか?
--- w3m-form.el.org Tue Feb 26 00:45:59 2002
+++ w3m-form.el Fri Mar 8 23:41:46 2002
@@ -252,6 +252,7 @@
(or method "get")
(or action
(progn
+ (if (null w3m-current-url) (setq w3m-current-url ""))
(string-match w3m-url-components-regexp w3m-current-url)
(substring w3m-current-url 0
(or (match-beginning 6) (match-beginning 8)))))
--
林 千史 chifumi@mscom.or.jp
Title: テスト