From: Jigar Gosar Date: 2007-11-13T23:41:15+09:00 Subject: Re: How do I exit from a block def list base_dir, prefix Dir.foreach(base_dir){|file| if (file.eql? "." or file.eql? "..") puts "break dosent work either" break end # this if is the only solution i found, but its ugly. if !(file.eql? "." or file.eql? "..") puts "Got #{prefix+file.gsub(/.java$/,"")}" if file =~ /.*\.java$/ full_name = base_dir+"/"+file if(File.directory?(full_name)) list full_name, prefix+file+"." end end } end list "c:/java/", "" break not only exited the block but also prevented execution with the next file in the directory, break actually broke the foreach loop entirely, I just wanted something like continue :) please advise. I am trying to recurse all directories and find certain type of files. Stefano Crocco wrote: > Alle marted狸 13 novembre 2007, Jigar Gosar ha scritto: >> list full_name >> please advise. > You should use break instead of return. > > Stefano -- Posted via http://www.ruby-forum.com/.