[MacRuby-devel] [MacRuby] #401: Cannot call from ObjC to Ruby with an int argument

MacRuby ruby-noreply at macosforge.org
Sat Oct 24 12:38:03 PDT 2009


#401: Cannot call from ObjC to Ruby with an int argument
-------------------------------------+--------------------------------------
 Reporter:  antony.blakey@…          |        Owner:  lsansonetti@…        
     Type:  defect                   |       Status:  closed               
 Priority:  critical                 |    Milestone:  MacRuby 0.5          
Component:  MacRuby                  |   Resolution:  invalid              
 Keywords:                           |  
-------------------------------------+--------------------------------------
Changes (by lsansonetti@…):

  * status:  new => closed
  * resolution:  => invalid


Comment:

 Calling Ruby from Objective-C can be problematic because of the runtime
 signature. In your case, the callWithInt: Ruby method is registered by
 default as accepting an Objective-C object, but in the Objective-C side
 you pass a C int, which results in the segfault.

 We introduced an API called -performRubySelector:, we recommend to use it
 when calling Ruby from Objective-C. Check out the MacRuby.h header file
 for the complete list of these APIs.

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



More information about the MacRuby-devel mailing list