String.st
changeset 8922 ab8665a8c030
parent 8921 e62bd67efa18
child 8923 ba871e13e4f0
--- a/String.st	Sat Jul 09 00:39:54 2005 +0200
+++ b/String.st	Sat Jul 09 00:41:40 2005 +0200
@@ -889,7 +889,11 @@
 
     REGISTER unsigned char *cp;
     REGISTER unsigned byteValue;
+#ifdef FAST_MEMCHR
+    REGISTER unsigned char *ncp;
+#else
     REGISTER INT index;
+#endif
     REGISTER int last;
     OBJ cls;
 
@@ -906,9 +910,9 @@
 	    }
 
 #ifdef FAST_MEMCHR
-	    cp = (unsigned char *) memchr(cp, byteValue, last);
-	    if (cp) {
-		RETURN ( __mkSmallInteger(cp - __stringVal(self) + 1) );
+	    ncp = (unsigned char *) memchr(cp, byteValue, last);
+	    if (ncp) {
+		RETURN ( __mkSmallInteger(ncp - cp + 1) );
 	    }
 #else
 	    for (index=1; index <= last; index++) {
@@ -3412,5 +3416,5 @@
 !String class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/String.st,v 1.221 2005-07-08 22:39:54 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/String.st,v 1.222 2005-07-08 22:41:40 cg Exp $'
 ! !