[macruby-changes] [177] MacRuby/trunk/string.c

source_changes at macosforge.org source_changes at macosforge.org
Sun Apr 27 22:16:37 PDT 2008


Revision: 177
          http://trac.macosforge.org/projects/ruby/changeset/177
Author:   lsansonetti at apple.com
Date:     2008-04-27 22:16:37 -0700 (Sun, 27 Apr 2008)

Log Message:
-----------
fixing more regressions in charset find

Modified Paths:
--------------
    MacRuby/trunk/string.c

Modified: MacRuby/trunk/string.c
===================================================================
--- MacRuby/trunk/string.c	2008-04-27 21:22:59 UTC (rev 176)
+++ MacRuby/trunk/string.c	2008-04-28 05:16:37 UTC (rev 177)
@@ -4982,6 +4982,8 @@
 	    b = exclude ? sptr + 1 : sptr;
 	    e = sptr + strlen(sptr) - 1;
 	    subset = CFCharacterSetCreateMutable(NULL);
+	    if (p == NULL)
+		p = strchr(b, '-');
 	    while (p != NULL) {
 		if (p > b && *(p - 1) != '\\' && *(p + 1) != '\0') {
 		    CFCharacterSetAddCharactersInRange(subset,
@@ -4997,9 +4999,13 @@
 		    CFCharacterSetAddCharactersInString(subset, substr);
 		    CFRelease(substr);
 		}
-
-		b = p + 2;
-		p = strchr(b, '-');
+		if (p == b) {
+		    p = NULL; 
+		}
+		else {
+		    b = p + 2;
+		    p = strchr(b, '-');
+		}
 	    }
 	    if (b <= e) {
 		CFStringRef substr;
@@ -5134,8 +5140,8 @@
     if (sflag == 0) {
 	long n;
 	for (n = result_range->location; 
-		n < result_range->location + result_range->length; 
-		n++)
+	     n < result_range->location + result_range->length; 
+	     n++)
 	    CFStringReplace(str, CFRangeMake(n, 1), substr);
     }
     else {

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080427/df072696/attachment-0001.html


More information about the macruby-changes mailing list