[MacRuby] #1129: Setting value of dereferenced pointer properties fails silently
#1129: Setting value of dereferenced pointer properties fails silently ---------------------------------+------------------------------------------ Reporter: dev@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: MacRuby 1.0 Component: MacRuby | Keywords: ---------------------------------+------------------------------------------ Orignal ML thread: http://lists.macosforge.org/pipermail/macruby- devel/2011-January/006944.html I suggest we either make it work or raise. For: {{{ - (BOOL)isPartialStringValid:(NSString **)partialStringPtr proposedSelectedRange:(NSRangePointer)proposedSelRangePtr originalString:(NSString *)origString originalSelectedRange:(NSRange)origSelRange errorDescription:(NSString **)error }}} When subclassing NSFormatter in ruby, I define the method as: {{{ def isPartialStringValid(partialStringPtr, proposedSelectedRange:proposedSelRangePtr, originalString:origString, originalSelectedRange:origSelRange, errorDescription:error) }}} When implementing the Cocoa Programming exercises in MacRuby, I ran across the following situation: At some point in that method definition, in the original code, Aaron sets the range properties directly: {{{ proposedSelRangePtr->location = [*partialStringPtr length]; proposedSelRangePtr->length = [match length] - proposedSelRangePtr->location; }}} Initially, I did similar in MacRuby {{{ proposedSelRangePtr[0].location = partialStringPtr[0].length proposedSelRangePtr[0].length = match.length - proposedSelRangePtr[0].location }}} This has no effect. It does not raise, but the values go unchanged. I can NSLog the range values before and after and they're the same. -- Ticket URL: <http://www.macruby.org/trac/ticket/1129> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby