diff options
author | Sterling Hughes <sterling@php.net> | 2003-05-20 19:09:33 +0000 |
---|---|---|
committer | Sterling Hughes <sterling@php.net> | 2003-05-20 19:09:33 +0000 |
commit | 3079bb1bda1d2b591e1775558a552c6b842bca6a (patch) | |
tree | 358355b7ae437ff5f22773679a9275eca6e472fb | |
parent | 54764e98484ef53631f32d2858bd28eb71e327fc (diff) | |
download | php-git-3079bb1bda1d2b591e1775558a552c6b842bca6a.tar.gz |
make this faster and sexier
-rw-r--r-- | Zend/zend_operators.c | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c index b1afbb8b16..fe20ab9c09 100644 --- a/Zend/zend_operators.c +++ b/Zend/zend_operators.c @@ -1581,32 +1581,25 @@ ZEND_API int zval_is_true(zval *op) ZEND_API char *zend_str_tolower_copy(char *str, unsigned int length) { - char *start; register char *result; register char *p = str; - register char *end = p + length; result = emalloc(length+1); - start = result; - while (p < end) { - *result++ = tolower(*p++); - } - *result = *end; + do { + result[length] = tolower(p[length]); + } while (length--); - return start; + return result; } ZEND_API void zend_str_tolower(char *str, unsigned int length) { - register char *p=str, *end=p+length; + register char *p=str; - while (p<end) { - if (*p >= 'A' && *p <= 'Z') { - *p = (*p)+32; - } - p++; - } + do { + p[length] = tolower(p[length]); + } while (length--); } ZEND_API int zend_binary_strcmp(char *s1, uint len1, char *s2, uint len2) |