[macruby-changes] [1737] MacRuby/branches/experimental/string.c
source_changes at macosforge.org
source_changes at macosforge.org
Thu Jun 4 18:01:19 PDT 2009
Revision: 1737
http://trac.macosforge.org/projects/ruby/changeset/1737
Author: lsansonetti at apple.com
Date: 2009-06-04 18:01:18 -0700 (Thu, 04 Jun 2009)
Log Message:
-----------
some fixes for String#swapcase!: check if the incoming string can be modified + return nil in case the given string is empty (means no change)
Modified Paths:
--------------
MacRuby/branches/experimental/string.c
Modified: MacRuby/branches/experimental/string.c
===================================================================
--- MacRuby/branches/experimental/string.c 2009-06-05 00:48:48 UTC (rev 1736)
+++ MacRuby/branches/experimental/string.c 2009-06-05 01:01:18 UTC (rev 1737)
@@ -2830,9 +2830,11 @@
UniChar *buffer;
bool changed;
+ rb_str_modify(str);
+
n = CFStringGetLength((CFStringRef)str);
if (n == 0) {
- return rb_str_dup(str);
+ return Qnil;
}
buffer = (UniChar *)CFStringGetCharactersPtr((CFStringRef)str);
@@ -2858,7 +2860,8 @@
return Qnil;
}
CFStringDelete((CFMutableStringRef)str, CFRangeMake(0, n));
- CFStringAppendCharacters((CFMutableStringRef)str, (const UniChar *)buffer, n);
+ CFStringAppendCharacters((CFMutableStringRef)str,
+ (const UniChar *)buffer, n);
return str;
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090604/884499da/attachment.html>
More information about the macruby-changes
mailing list