21.2.33 になってすぐに現象に気付いたのですが、MLなどには報告されていな
いようだったので様子を見てました。
In article <yosuaei2ytjn.fsf(a)jpl.org>,
Katsumi Yamaoka <yamaoka(a)jpl.org> wrote:
% xemacs -vanilla FILE
と、ファイル名を引数に与えて起動すると、
Wrong type argument: glyphp, nil
というエラーになります。"-vanilla" を付けない場合も同様です。
startup まわりをおっかけてみると、with-mule の場合に
file-name-coding-system による引数文字列の decode が行われるあたり
(lisp/mule/mule-init.el(init-mule))が怪しそうだという感触を得ました。
この中で、decode-coding-string() を呼んでいますが、これはテンポラリな
バッファを作って decode-coding-region を呼び、バッファを消す、という処
理を行っています。21.2.33 で、バッファの生成/削除時に gutter 周りの処
理が行われるようになったみたいですが、そこで、まだ充分に初期化の済んで
いない時点でのバッファ操作時におかしなことになっているような気がします。
とりあえず、gutter-items.el(remove-buffer-from-gutter-tab) の中で、
(defun remove-buffer-from-gutter-tab ()
"Remove the current buffer from the tab control in the gutter area."
(when (and (valid-image-instantiator-format-p 'tab-control)
(glyphp gutter-buffers-tab)
(specifier-instance default-gutter-visible-p))
のように、gutter-buffers-tab が glyph に初期化されているかどうかを確認
してやれば、エラーは回避できることがわかりましたが、これが TRT (The
Right Thing)かどうかはわかりません…
xemacs-beta (xemacs-mule?)に投げてみようかな…?
--
さねを <URL:mailto:sanewo@ba2.so-net.ne.jp>