[MacRuby] #1304: Block Fails to Return Value Upon Break

MacRuby ruby-noreply at macosforge.org
Wed May 25 13:39:43 PDT 2011


#1304: Block Fails to Return Value Upon Break
----------------------------+-----------------------------------------------
 Reporter:  techzen@…       |       Owner:  lsansonetti@…        
     Type:  defect          |      Status:  new                  
 Priority:  blocker         |   Milestone:                       
Component:  MacRuby         |    Keywords:                       
----------------------------+-----------------------------------------------
 If I run the following under the system ruby 1.8.7:

 {{{
 require 'find'
 starting_directory="/Users/developer/Desktop/Top"
 file_name_I_want_to_find="target_file.txt"
 path=Find.find(starting_directory) {|p| break p if
 p.include?(file_name_I_want_to_find) }
 puts "path = #{path}"
 }}}

 ... I get the expected output:

 {{{
 path = /Users/developer/Desktop/Top/Lev_1-2/Lev_2.1/target_file.txt
 }}}

 However, if I run it under Macruby I get nothing, just:

 {{{
 path =
 }}}

 I'm running MacRuby 0.10 (ruby 1.9.2) [universal-darwin10.0, x86_64] on
 10.6.7

 Also, Laurent Sansonetti <lsansonetti at apple.com> reports:

 {{{
 $ ./miniruby -e "require 'find'; p Find.find('.') { break 42 }"
 nil
 $ ruby1.9 -e "require 'find'; p Find.find('.') { break 42 }"
 42
 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1304>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list