From: Masao M. <mu...@hi...> - 2003-08-04 17:25:09
|
さかいさん むとうです。 質問&中間報告です。 さらに短い再現スクリプトができました。 require 'gtk2' Gtk.init model = Gtk::ListStore.new(Array) iter = model.append iter.set_value(0, Array.new) GC.start とりあえず、現時点でわかったこととして、 上記コードで、boxed_ruby_value_ref()が2回呼ばれます。 これは1回だけ呼ばれるべきかと思うのですが、 2回呼ばれるのには理由があるのでしょうか。 ここで2回呼ばれるのでref counterが2になります。 逆にboxed_ruby_value_unref()は1回呼ばれるのですが、 カウンタは1なのでmarkers.deleteが呼び出されず、 (もう一度呼ぼうとする?)その直後にsegfaultします。 何かわかることがありましたら教えてください。 #今日はここまでです...。 -- .:% Masao Mutoh<mu...@hi...> |