[MacRuby] #1060: Segfault occurs when StringIO#puts handles self-recursive array.
MacRuby
ruby-noreply at macosforge.org
Sat Dec 18 06:05:42 PST 2010
#1060: Segfault occurs when StringIO#puts handles self-recursive array.
----------------------------------+-----------------------------------------
Reporter: watson1978@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: blocker | Milestone:
Component: MacRuby | Keywords:
----------------------------------+-----------------------------------------
Test Script:
{{{
#!ruby
# handles self-recursive arrays
require 'stringio'
@io = StringIO.new
ary = [5]
ary << ary
@io.puts(ary)
}}}
BackTrace:
{{{
$ DYLD_LIBRARY_PATH=. gdb --args ./macruby -I./lib ~/tmp/tt.rb
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5f3ffff8
0x00007fff83d4730c in ___CFBasicHashFindBucket1 ()
(gdb) bt 20
#0 0x00007fff83d4730c in ___CFBasicHashFindBucket1 ()
#1 0x00007fff83d4ea9e in CFBasicHashFindBucket ()
#2 0x00007fff83d7bdbb in CFDictionaryGetValueIfPresent ()
#3 0x00000001000ca9b6 in ivar_get (obj=8590176608, id=8192, warn=false,
undef=false) at variable.c:1034
#4 0x00000001000caaa6 in rb_attr_get (obj=8590176608, id=8192) at
variable.c:1061
#5 0x0000000100029d9c in rb_mod_ancestors_nocopy (mod=8590176608) at
class.c:724
#6 0x00000001001346a7 in rb_vm_super_lookup (klass=0x20003b160,
sel=0x7fff854e925e, super_class_p=0x7fff5f400888) at dispatcher.cpp:281
#7 0x0000000100136dbf in rb_vm_dispatch () at dispatcher.cpp:631
#8 0x0000000100035e72 in rb_vm_call0 (vm=0x100e250f0, top=0,
self=8599698304, klass=0x20003b160, sel=0x7fff854e925e, block=0x0, opt=4
'\004', argc=2, argv=0x7fff5f401b60) at vm.h:603
#9 0x0000000100035dab in rb_vm_call_super (self=8599698304,
sel=0x7fff854e925e, argc=2, argv=0x7fff5f401b60) at vm.h:617
#10 0x0000000100036308 in nometh_err_initialize (self=8599698304,
sel=0x7fff854e925e, argc=2, argv=0x7fff5f401b60) at error.c:739
#11 0x0000000100137bc7 in ruby_dispatch [inlined] () at /Users/watson/src
/macruby-trunk-svn/dispatcher.cpp:448
#12 0x0000000100137bc7 in rb_vm_dispatch () at dispatcher.cpp:849
#13 0x000000010005dd61 in rb_vm_call0 (vm=0x100e250f0, top=0,
self=8599698304, klass=0x20003b160, sel=0x7fff854e925e, block=0x0, opt=2
'\002', argc=3, argv=0x7fff5f401b60) at vm.h:603
#14 0x00000001000618d5 in rb_vm_call2 (block=0x0, self=8599698304,
klass=8590176608, sel=0x7fff854e925e, argc=3, argv=0x7fff5f401b60) at
vm.h:628
#15 0x0000000100061848 in rb_class_new_instance0 (argc=3,
argv=0x7fff5f401b60, klass=8590176608) at object.c:1953
#16 0x00000001000618ff in rb_class_new_instance (argc=3,
argv=0x7fff5f401b60, klass=8590176608) at object.c:1968
#17 0x0000000100153cce in rb_vm_method_missing (obj=21, argc=1,
argv=0x20094f9c0) at vm.cpp:2855
#18 0x00000001000e62ed in rb_method_missing (obj=21, sel=0x100e2c960,
argc=1, argv=0x20094f9c0) at vm_eval.c:84
#19 0x0000000100137bc7 in ruby_dispatch [inlined] () at /Users/watson/src
/macruby-trunk-svn/dispatcher.cpp:448
(More stack frames follow...)
}}}
--
Ticket URL: <http://www.macruby.org/trac/ticket/1060>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list