永井@知能.九工大です. From: H.Yamamoto <ocean / m2.ccsnet.ne.jp> Subject: [ruby-dev:25489] Re: some problems on ext/tk/sample/**/*.rb Date: Sat, 22 Jan 2005 15:03:49 +0900 Message-ID: <20050122150346.FD420190.ocean / m2.ccsnet.ne.jp> > >少々手間取ってしまいましたが,次のようなパッチではいかがでしょうか? > お疲れ様です。動くようになりました。 確認をありがとうございます.手が空いた時に commit しておきます. > 実は、ruby/tk の問題ではないようなので報告しなかった問題があったのですが、 > 一応報告します。(特に前者の問題が奇妙奇天烈です) (snip) > //////////////////////// > // tkextlib/vu/dial.rb > > * マウスをもっていくと、エラーダイアログが出る。 (snip) > * なぜかサンプルスクリプトの名前を変えると出なくなる。謎。 あ,この件についての対応を忘れてました. と言っても根本的な回避ができるというわけではなく, 「デモプログラムの名前を変更する」という対処です. これは Win 版の Tcl/Tk のバグだろうと思います. この現象は,起動したスクリプト名 (拡張子除外) と autoload される Tcl/Tk のライブラリファイルの名前 (同じく拡張子除外) とが一致した場合に発生するようです. 確か button.tcl という Tcl/Tk スクリプトを起動して そのスクリプト中でボタンウィジェットを生成した場合などでも 発生したと思います. Ruby と全く関係なく Win 版 Tcl/Tk の上だけで発生する問題ですので 「仕様」として諦めるしかありません. > //////////////////////// > // tkextlib/vu/vu.rb > Show off barchart and dial widgets > e:/ruby/lib/ruby/1.8/tk.rb:1383: [BUG] Segmentation fault > ruby 1.8.2 (2005-01-12) [i386-bccwin32] こちらは初めての報告です. > * これは tcl/tk 側のバグのように見える。下のコードでも再現する。 どうやらそのようですね. Win 版の ActiveTcl の wish で package require vu ::vu::bargraph .bg pack .bg などとやってみましたが,見事に落ちます. これも Ruby 側に責任がない問題ですので, Tcl/Tk 側のバグフィックスを待つしかありません. -- 永井 秀利 (九工大 知能情報) nagai / ai.kyutech.ac.jp