Bug #8946
Updated by hsbt (Hiroshi SHIBATA) about 8 years ago
I was trying to watch gc behavior by generating NoMemoryError intentionally, a segmentation fault occurred without any exception raised. the simple ruby code goes here: ```rb # RUBY CODE BEGIN arr= [] begin while true arr << 1 end rescue NoMemoryError puts 'no memory' puts GC.count end ``` # RUBY CODE END here is the ruby command line output: ``` C:\Ruby200-x64\bin\ruby.exe -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) C:/Users/liuxd/RubymineProjects/rubytest/ruby_learn.rb C:/Users/liuxd/RubymineProjects/rubytest/ruby_learn.rb:6: [BUG] Segmentation fault ruby 2.0.0p247 (2013-06-27) [x64-mingw32] -- Control frame information ----------------------------------------------- c:0004 p:0021 s:0011 e:000010 TOP C:/Users/liuxd/RubymineProjects/rubytest/ruby_learn.rb:6 [FINISH] c:0003 p:---- s:0008 e:000007 CFUNC :load c:0002 p:0035 s:0004 E:000658 EVAL -e:1 [FINISH] c:0001 p:0000 s:0002 E:001788 TOP [FINISH] -e:1:in `<main>' -e:1:in `load' C:/Users/liuxd/RubymineProjects/rubytest/ruby_learn.rb:6:in `<top (required)>' -- C level backtrace information ------------------------------------------- C:\Windows\SYSTEM32\ntdll.dll(NtWaitForSingleObject+0xa) [0x00000000772812FA] C:\Windows\system32\KERNELBASE.dll(WaitForSingleObjectEx+0x9c) [0x000007FEFD3910DC] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_vm_bugreport+0x9d) [0x000000006F28327D] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_name_err_mesg_new+0x838) [0x000000006F141DF8] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_bug+0x45) [0x000000006F142BA5] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_check_safe_str+0x18c) [0x000000006F208E5C] [0x0000000000401A85] C:\Windows\SYSTEM32\ntdll.dll(_C_specific_handler+0x9c) [0x00000000772485C8] C:\Windows\SYSTEM32\ntdll.dll(RtlDecodePointer+0xad) [0x0000000077259D2D] C:\Windows\SYSTEM32\ntdll.dll(RtlUnwindEx+0xbbf) [0x00000000772491CF] C:\Windows\SYSTEM32\ntdll.dll(KiUserExceptionDispatcher+0x2e) [0x0000000077281248] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_ary_push+0x4c) [0x000000006F10C16C] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_vm_localjump_error+0x3223) [0x000000006F273D33] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_vm_localjump_error+0x5ed9) [0x000000006F2769E9] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_iseq_eval+0x193) [0x000000006F2801D3] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_rubylevel_errinfo+0x5ea) [0x000000006F14B83A] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_rubylevel_errinfo+0x11be) [0x000000006F14C40E] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_error_arity+0x125) [0x000000006F26E485] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_add_method_cfunc+0x5f2) [0x000000006F27DF22] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_vm_localjump_error+0x21c8) [0x000000006F272CD8] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_vm_localjump_error+0x5ed9) [0x000000006F2769E9] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_iseq_eval_main+0x1e0) [0x000000006F280400] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(rb_check_copyable+0x31f6) [0x000000006F147AD6] C:\Ruby200-x64\bin\x64-msvcrt-ruby200.dll(ruby_run_node+0x51) [0x000000006F14A421] [0x0000000000402D14] [0x00000000004013D7] [0x00000000004014F8] C:\Windows\system32\kernel32.dll(BaseThreadInitThunk+0xd) [0x0000000076C6652D] -- Other runtime information ----------------------------------------------- * Loaded script: C:/Users/liuxd/RubymineProjects/rubytest/ruby_learn.rb * Loaded features: 0 enumerator.so 1 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/enc/encdb.so 2 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/enc/gbk.so 3 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/enc/trans/transdb.so 4 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/rbconfig.rb 5 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/compatibility.rb 6 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/defaults.rb 7 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/deprecate.rb 8 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/errors.rb 9 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/version.rb 10 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/requirement.rb 11 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/platform.rb 12 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/specification.rb 13 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/exceptions.rb 14 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/defaults/operating_system.rb 15 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/enc/utf_16le.so 16 C:/Ruby200-x64/lib/ruby/2.0.0/x64-mingw32/enc/trans/utf_16_32.so 17 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_gem.rb 18 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb 19 C:/Ruby200-x64/lib/ruby/2.0.0/rubygems.rb [NOTE] You may have encountered a bug in the Ruby interpreter or extension libraries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. Process finished with exit code 3 ```