From: Masao M. <mu...@hi...> - 2003-08-02 17:46:29
|
むとうです。 中間報告です。 On Fri, 1 Aug 2003 22:46:12 +0900 Masao Mutoh <mu...@hi...> wrote: > 上記では落ちなくなったのですが、最新のrbbrだと落ちます....。 > 特定のメソッドが原因のような気もしてますのでちと追ってみます。 > > それでは。 たぶん、以下のスクリプトで再現すると思います。 HashをStringに変えると起きません。 gdbのbtの状況とHashが引っかかったところを見ると、 boxed_ruby_*周りが怪しいかなと思っています。 #もうちょっと追ってみます。 それでは。 --- require 'gtk2' Gtk.init class Test < Gtk::TreeView def initialize model = Gtk::ListStore.new(String, Hash) # model = Gtk::ListStore.new(String, String) super(model) renderer = Gtk::CellRendererText.new column = Gtk::TreeViewColumn.new("test", renderer, {:text => 0}) append_column(column) iter = model.append iter.set_value(0, "hoge1") iter.set_value(1, {"hoge" => 1, "fuga" =>2}) # iter.set_value(1, "fuga") end end tv = Test.new win = Gtk::Window.new.add(tv).show_all win.signal_connect("destroy") do Gtk.main_quit end Gtk.main ----- backtraceの結果 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1074295968 (LWP 11359)] 0x0805900f in rb_longjmp (tag=6, mesg=1084405584) at eval.c:3923 3923 JUMP_TAG(tag); (gdb) bt #0 0x0805900f in rb_longjmp (tag=6, mesg=1084405584) at eval.c:3923 #1 0x08059084 in rb_exc_raise (mesg=1084405584) at eval.c:3930 #2 0x080ba5f7 in rb_raise (exc=1074484448, fmt=0x80d54a0 "wrong argument type %s (expected %s)") at error.c:694 #3 0x080b983a in rb_check_type (x=0, t=-1073756272) at error.c:254 #4 0x4002720d in boxed_ruby_value_unref (val=0) at rbgobj_valuetypes.c:170 #5 0x400de2d0 in g_boxed_free (boxed_type=135957332, boxed=0x40a2ba0c) at gboxed.c:409 #6 0x40685fb4 in _gtk_tree_data_list_free () from /usr/lib/libgtk-x11-2.0.so.0 #7 0x40135148 in g_slist_foreach (list=0x0, func=0x40685ef0 <_gtk_tree_data_list_free>, user_data=0x8116188) at gslist.c:630 #8 0x405d3d76 in gtk_list_store_set_column_types () from /usr/lib/libgtk-x11-2.0.so.0 #9 0x400e1409 in g_object_last_unref (object=0x401058e8) at gobject.c:442 #10 0x40022462 in rbgobj_free (holder=0x81b8728) at rbgobject.c:134 #11 0x0806b0d3 in rb_gc_call_finalizer_at_exit () at gc.c:1607 #12 0x080534c1 in ruby_finalize_0 (exp=0xbfffed30) at eval.c:1333 #13 0x08053622 in ruby_cleanup (ex=0) at eval.c:1368 #14 0x08053726 in ruby_stop (ex=0) at eval.c:1395 #15 0x08053765 in ruby_run () at eval.c:1407 #16 0x08051bb9 in main (argc=2, argv=0xbfffedd4, envp=0xbfffede0) at main.c:50 #17 0x42015574 in __libc_start_main () from /lib/tls/libc.so.6 (gdb) -- .:% Masao Mutoh<mu...@hi...> |