From: Sascha Schumann Date: Sat, 20 Sep 2003 16:09:41 +0000 (+0000) Subject: Avoid zero-length keys which result in a spinning process X-Git-Tag: php-4.3.4RC1~42 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ca4d592e1112522bf1ab76c54db7002f35ab2c5f;p=php Avoid zero-length keys which result in a spinning process --- diff --git a/ext/standard/string.c b/ext/standard/string.c index 2bf5719bff..0e099dcecf 100644 --- a/ext/standard/string.c +++ b/ext/standard/string.c @@ -1551,7 +1551,7 @@ PHP_FUNCTION(strrchr) /* {{{ php_chunk_split */ -static char *php_chunk_split(char *src, int srclen, char *end, int endlen, +static PHP_ATTRIBUTE_MALLOC char *php_chunk_split(char *src, int srclen, char *end, int endlen, int chunklen, int *destlen) { char *dest; @@ -1940,6 +1940,9 @@ static void php_strtr_array(zval *return_value, char *str, int slen, HashTable * switch (zend_hash_get_current_key_ex(hash, &string_key, &string_key_len, &num_key, 0, &hpos)) { case HASH_KEY_IS_STRING: len = string_key_len-1; + if (len < 1) { + RETURN_FALSE; + } if (len > maxlen) maxlen = len; if (len < minlen) minlen = len; break;