[MacRuby] #1240: Seg fault requiring Sinatra Module

MacRuby ruby-noreply at macosforge.org
Sat Apr 23 00:59:59 PDT 2011


#1240: Seg fault requiring Sinatra Module
-------------------------------------+--------------------------------------
 Reporter:  adam_kenger@…            |       Owner:  lsansonetti@…                    
     Type:  defect                   |      Status:  new                              
 Priority:  blocker                  |   Milestone:                                   
Component:  MacRuby                  |    Keywords:  sinatra module segmentation fault
-------------------------------------+--------------------------------------

Comment(by lsansonetti@…):

 Called from:

 {{{
     def self.register(*extensions, &block) #:nodoc:
       added_methods = extensions.map {|m| m.public_instance_methods
 }.flatten
       Delegator.delegate(*added_methods)
       super(*extensions, &block)
     end
 }}}

 Because #send is part of the methods to delegate, it creates a recursive
 call.

 Reduction:

 {{{
 $ ./miniruby -e "module M; end; p M.public_instance_methods"
 [:to_plist, :Complex, :Rational, :enum_for, :to_enum, :object_id, :__id__,
 :define_singleton_method, :public_method, :method, :extend,
 :respond_to_missing?, :respond_to?, :public_send, :send, :__send__,
 :instance_exec, :instance_eval, :__callee__, :__method__, :tap, :is_a?,
 :kind_of?, :instance_of?, :instance_variable_defined?,
 :instance_variable_set, :instance_variable_get, :instance_variables,
 :public_methods, :private_methods, :protected_methods, :singleton_methods,
 :methods, :inspect, :to_s, :untrusted?, :untrust, :trust, :frozen?,
 :freeze, :untaint, :tainted?, :taint, :__type__, :dup, :clone, :<=>,
 :eql?, :!~, :=~, :===, :nil?, :!=, :!, :==, :equal?]
 $ ruby1.9 -e "module M; end; p M.public_instance_methods"
 []
 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1240#comment:3>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list