[MacRuby] #1365: in `new': must be called with a block (ThreadError)

MacRuby ruby-noreply at macosforge.org
Thu Jul 21 22:16:54 PDT 2011


#1365: in `new': must be called with a block (ThreadError)
-------------------------------------------+--------------------------------
 Reporter:  satoh@…                        |       Owner:  lsansonetti@…        
     Type:  defect                         |      Status:  new                  
 Priority:  major                          |   Milestone:  MacRuby 0.11         
Component:  MacRuby                        |    Keywords:  Thread.new, call     
-------------------------------------------+--------------------------------
 I
 {{{
 , [2011-07-20T15:32:12.259415 #22560]  INFO -- :  Running with  MacRuby
 0.10 (ruby 1.9.2) [universal-darwin10.0, x86_64]   macruby
 /Users/satounorio/dionea/dionea/branches/2011-branch/dionea-
 ruby19/dioneas.rb:20:in `new': must be called with a block (ThreadError)

 ===excerpt (line 20 is the 4th line below===

 Original_thread_new = Thread.method(:new)
 class Thread
   def self.new(*args, &block)
     t = Dionea::Original_thread_new.call(args, block) {|args, block|
       str_msg = "Dionea.debugger should not be nil"
       #Dionea::Log.debug "New thread has been created #{Thread.current}"
       if Dionea.debugger.class == nil.class then
         Dionea::Log.error str_msg
         raise str_msg
       end

       threadID = Dionea.debugger.set_thread(block.binding)
       if RUBY_VERSION >= '1.9'
         #$stderr.print "DBG: Trying set_trace_func: debuggee threads \n"
         Thread.current.set_trace_func(Dionea.debugger.traceFunc) unless
 threadID == 0
       end
       begin
         block.call(*args) #, &block)
       ensure
         unless threadID == 0 then
           Dionea.debugger.unset_thread(threadID)
         end
       end
     }
     t
   end#Thread.new(*args, &block)


 }}}

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



More information about the macruby-tickets mailing list