From: Hiroshi IGARASHI <igarashi / ueda.info.waseda.ac.jp>
Subject: [ruby-ext:00598] Re: Ruby/GTK SNAPSHOT-19991129
Date: Mon, 29 Nov 1999 17:26:19 +0900

> こちらでも再現しました。0.22でも同様です。
> markの途中で落ちてるみたいですが、これから調べてみます。
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x40035f85 in rb_gc_mark () at gc.c:381
> 381     }

うちでも落ちます。
$ ruby -Isrc -Isample/testgtk/ sample/testgtk/testgtk.rb 
./sample/testgtk/layout.rb:72: [BUG] rb_gc_mark(): unknown data type 0x10(0x81a0120) non object
Aborted (core dumped)

memoryの addressは毎回変わりますね。
で、たぶん

layoutで大量の memoryが消費されたりして、GCが動いたときに rbgtkctree.cの
以下のfunctionで markされてるところを free(?)しようとして、おちてるんじゃ
ないでしょうか?

static void
ctree_node_mark(node)
     GtkCTreeNode *node;
{
    if (GTK_CTREE_ROW(node) && GTK_CTREE_ROW(node)->row.data)
	rb_gc_mark(GTK_CTREE_ROW(node)->row.data);
}

これ以上は、わからない‥‥。 
--
             yashi