]> granicus.if.org Git - php/commitdiff
substr() fix
authorRasmus Lerdorf <rasmus@php.net>
Wed, 12 May 1999 12:53:45 +0000 (12:53 +0000)
committerRasmus Lerdorf <rasmus@php.net>
Wed, 12 May 1999 12:53:45 +0000 (12:53 +0000)
ext/standard/string.c

index 012de6a6115d9b88781adb191fc4f0acfa28bdc6..e1880c93b63713ee5653de3c9cd248ff108c8a56 100644 (file)
@@ -826,9 +826,10 @@ void php3_substr(INTERNAL_FUNCTION_PARAMETERS)
                RETURN_FALSE;
        }
 
-       if ((f + l) < (int)string->value.str.len) {
-               string->value.str.val[f + l] = '\0';
+       if((f+l) > (int)string->value.str.len) {
+               l = (int)string->value.str.len - f;
        }
+
        RETVAL_STRINGL(string->value.str.val + f, l, 1);
 }
 /* }}} */