Projects
Home     Blog     Install     New Ticket     View Tickets     Browse Source

Ticket #36 (closed defect: fixed)

Opened 10 months ago

Last modified 10 months ago

on trunk .methods.sort doesn't work

Reported by: jordan.breeding@… Owned by: lsansonetti@…
Priority: blocker Milestone: MacRuby 0.2
Component: MacRuby Keywords:
Cc:

Description

on trunk

[1,2,3,4].methods.sort

results in

irb(main):003:0> [1, 2, 3, 4].methods.sort
(irb):3: [BUG] Segmentation fault
MacRuby version 0.2 (ruby 1.9.0 2008-03-01) [universal-darwin9.0]

-- control frame ----------
c:0025 p:---- s:0075 b:0075 l:000074 d:000074 CFUNC  :uniq!
c:0024 p:---- s:0073 b:0073 l:000072 d:000072 CFUNC  :methods
c:0023 p:0008 s:0070 b:0070 l:0023d4 d:000069 EVAL   (irb):3
c:0022 p:---- s:0069 b:0069 l:000068 d:000068 FINISH :empty?
c:0021 p:---- s:0067 b:0067 l:000066 d:000066 CFUNC  :eval
c:0020 p:0023 s:0060 b:0060 l:000059 d:000059 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80
c:0019 p:0025 s:0053 b:0052 l:000051 d:000051 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/context.rb:218
c:0018 p:0024 s:0047 b:0047 l:0012e4 d:000046 BLOCK  /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:149
c:0017 p:0025 s:0040 b:0040 l:000039 d:000039 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:262
c:0016 p:0009 s:0035 b:0035 l:0012e4 d:000034 BLOCK  /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:146
c:0015 p:0093 s:0032 b:0032 l:000021 d:000031 BLOCK  /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:243
c:0014 p:---- s:0032 b:0032 l:000031 d:000031 FINISH :block_given?
c:0013 p:---- s:0030 b:0030 l:000029 d:000029 CFUNC  :loop
c:0012 p:0007 s:0027 b:0027 l:000021 d:000026 BLOCK  /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:230
c:0011 p:---- s:0028 b:0028 l:000027 d:000027 FINISH :each
c:0010 p:---- s:0026 b:0026 l:000025 d:000025 CFUNC  :catch
c:0009 p:0017 s:0022 b:0022 l:000021 d:000021 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:229
c:0008 p:0034 s:0019 b:0019 l:0012e4 d:0012e4 METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:145
c:0007 p:0009 s:0016 b:0016 l:00120c d:000015 BLOCK  /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:69
c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH :(null)
c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC  :catch
c:0004 p:0152 s:0011 b:0011 l:00120c d:00120c METHOD /Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68
c:0003 p:0033 s:0006 b:0006 l:000005 d:000005 TOP    /usr/local/bin/macirb:12
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited
c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP    
---------------------------
DBG> : "(irb):3:in `methods'"
DBG> : "(irb):3:in `irb_binding'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80:in `eval'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/workspace.rb:80:in `evaluate'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/context.rb:218:in `evaluate'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:149:in `block (2 levels) in eval_input'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:262:in `signal_status'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:146:in `block in eval_input'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:230:in `loop'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:230:in `block in each_top_level_statement'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:229:in `catch'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb/ruby-lex.rb:229:in `each_top_level_statement'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:145:in `eval_input'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:69:in `block in start'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68:in `catch'"
DBG> : "/Library/Frameworks/MacRuby.framework/Versions/0.2/usr/lib/ruby/1.9.0/irb.rb:68:in `start'"
DBG> : "/usr/local/bin/macirb:12:in `<main>'"
-- backtrace of native function call (Use addr2line) --
0x2b0ae6
0x1de5ec
0x1de62b
0x265721
0x9281b5eb
0xffffffff
0x1f6d06
0x1f92d2
0x946fd923
0x1fc702
0x946fdb86
0x1f964c
0x1c7c3e
0x1c7c62
0x2af708
0x1e5229
0x1e5459
0x1e5b92
0x2b855a
0x1d4e05
0x21a1e7
0x2a0fa5
0x2aee40
0x2a8904
0x2adfdc
0x1e9f31
0x1ea386
0x2a0fa5
0x2aee40
0x2a8904
0x2adfdc
0x2ae59d
0x1e259a
0x1e2659
0x1e27b7
0x2aee40
0x2a8904
0x2adfdc
0x2ae59d
0x1e4500
0x2a0fa5
0x2aee40
0x2a8904
0x2adfdc
0x2ae59d
0x1e4500
0x2a0fa5
0x2aee40
0x2a8904
0x2adfdc
0x2ae2b1
0x1e225a
0x1e7b4f
0x1fdf
0x1f46
-------------------------------------------------------
zsh: abort      /usr/local/bin/macirb

Change History

Changed 10 months ago by lsansonetti@…

This works fine for me.

$ macruby -ve "p [1, 2, 3, 4].methods.sort"
MacRuby version 0.2 (ruby 1.9.0 2008-03-01) [universal-darwin9.0]
[lots of methods]

Please tell me if you reproduce it with recent trunk.

Changed 10 months ago by lsansonetti@…

  • milestone set to MacRuby 1.0

It seems that this problem affects a few people, and also very randomly.

Changed 10 months ago by artension@…

It reproduced here.

$ macruby -ve '1.methods.sort'
MacRuby version 0.2 (ruby 1.9.0 2008-03-01) [universal-darwin9.0]
-e:1: [BUG] Segmentation fault
MacRuby version 0.2 (ruby 1.9.0 2008-03-01) [universal-darwin9.0]

-- control frame ----------
c:0005 p:---- s:0011 b:0011 l:000010 d:000010 CFUNC  :uniq!
c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC  :methods
c:0003 p:0008 s:0006 b:0006 l:000005 d:000005 TOP    -e:1
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited
c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP    
---------------------------
DBG> : "-e:1:in `methods'"
DBG> : "-e:1:in `<main>'"
-- backtrace of native function call (Use addr2line) --
0x2b0ac6
0x1de3cc
0x1de40b
0x265701
0x9684d5eb
0xffffffff
0x1f6a86
0x1f9052
0x92607923
0x1fc0f2
0x92607b86
0x1fd995
0x1c78de
0x1c7902
0x2af6e8
0x1e5012
0x1e5219
0x1e5952
0x2b853a
0x1d4aa5
0x21a1c7
0x2a0f85
0x2aee20
0x2a88e4
0x2adfbc
0x2ae291
0x1e203a
0x1e790f
0x1fdf
0x1f46
0x3
-------------------------------------------------------
Abort trap

Changed 10 months ago by lsansonetti@…

I committed a potential fix in trunk/r114. Could you check if you can still reproduce the crash?

Changed 10 months ago by jordan.breeding@…

Seems to have fixed it for me. I can no longer reproduce the crash.

Changed 10 months ago by lsansonetti@…

  • status changed from new to closed
  • resolution set to fixed
  • milestone changed from MacRuby 1.0 to MacRuby 0.2

Groovy, closing.

Note: See TracTickets for help on using tickets.