まつもと ゆきひろです

In message "[ruby-dev:3325] Re: sample of TkFont class"
    on 98/07/17, Tadayoshi Funaba <tadf / kt.rim.or.jp> writes:
|
|ふなばです。
|
|Tk の勉強をかねて作っているアプリケイションが、1.1b9_31 では動かなくなっ
|てしまいました。こういうエラーになるんですが、なにか判るでしょうか。
|
|/usr/local/lib/ruby/tkfont.rb:68:in `init_widget_font': undefined method `[]' for nil (NameError)

この部分でのチェックが甘い(Array#assocがnilを返すことを想定
していない)のが原因です.正式な修正は永井さんにお願いすると
して,とりあえずこんな感じでいかがでしょう.

# あくまでも修正イメージです.全然テストしてません.

--- tkfont.rb	1998/07/15 06:13:04	1.1.2.2
+++ tkfont.rb	1998/07/17 01:23:28
@@ -67,5 +67,7 @@
       conf = tk_split_list(tk_call(*args))
-      ltn = conf.assoc('font')[4]
+      ltn = conf.assoc('font')
+      ltn = ltn[4] if ltn
       ltn = nil if ltn == []
-      knj = conf.assoc('kanjifont')[4]
+      knj = conf.assoc('kanjifont')
+      knj = knj[4] if knj
       knj = nil if knj == []