[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: w3m-view-this-url-1 fails with set-buffer



>>>>> In [emacs-w3m : No.09452] 木下さん wrote:

> S-RET (w3m-view-this-url-new-session)でリンクを新しいタブで開いて、
> その読み込みが終わる前に元のバッファを削除すると、(set-buffer nil)で
> エラーになってしまうことに気づきました。

> よくわかっていませんが、エラーの箇所は特定できました。下記のパッチで
> 回避できるようなのですが、いかがでしょうか。

どうもありがとうございます。いただいたパッチを当てました。再現実
験は人間技ではしんどいので、これ↓を eval して行ないました。;-)

(let ((buffer (current-buffer)))
  (call-interactively 'w3m-view-this-url-new-session)
  (kill-buffer buffer))

> 2007-05-17  Tatsuya Kinoshita  <tats@xxxxxxxxxxxxxx>

> 	* w3m.el (w3m-view-this-url-1): Check whether the marker buffer exists.

> --- emacs-w3m.orig/w3m.el
> +++ emacs-w3m/w3m.el
> @@ -6056,7 +6056,7 @@
>  	    (w3m-delete-buffer-if-empty buffer))
>  	  ;; FIXME: what we should actually do is to modify the `w3m-goto-url'
>  	  ;; function so that it may return a proper value, and checking it.
> -	  (when (buffer-name (marker-buffer pos))
> +	  (when (and (marker-buffer pos) (buffer-name (marker-buffer pos)))
>  	    (save-excursion
>  	      (set-buffer (marker-buffer pos))
>  	      (save-excursion

ところでこの FIXME は、以前はこう↓書いてありました。

	;; FIXME: 本当は w3m-goto-url() が適当な返り値を返すように
	;; 変更して、その値を検査するべきだ
-- 
山岡