Missing parentheses...

Regards,
Wojtek Meler
Index: string.c
===================================================================
RCS file: /repository/php-src/ext/standard/string.c,v
retrieving revision 1.333.2.52.2.3
diff -u -r1.333.2.52.2.3 string.c
--- string.c	1 Jan 2006 13:46:58 -0000	1.333.2.52.2.3
+++ string.c	20 Feb 2006 10:55:22 -0000
@@ -829,12 +829,14 @@
 	HashPosition   pos;
 	smart_str      implstr = {0};
 	int            numelems, i = 0;
+	size_t newlen; //used by smart_str_alloc
 
 	numelems = zend_hash_num_elements(Z_ARRVAL_P(arr));
 
 	if(numelems == 0) {
 		RETURN_EMPTY_STRING();
 	}
+	smart_str_alloc((&implstr),numelems*Z_STRLEN_P(delim),0);
 
 	zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(arr), &pos);
 	while (zend_hash_get_current_data_ex(Z_ARRVAL_P(arr), 
@@ -846,6 +848,8 @@
 		smart_str_appendl(&implstr, Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp));
 		if (++i != numelems) {
 			smart_str_appendl(&implstr, Z_STRVAL_P(delim), Z_STRLEN_P(delim));
+			newlen  = numelems*(implstr.len/i)-implstr.len;
+			smart_str_alloc((&implstr),newlen,0);
 		}
 		zend_hash_move_forward_ex(Z_ARRVAL_P(arr), &pos);
 	}
@@ -1924,6 +1928,10 @@
 
 	key = emalloc(maxlen+1);
 	pos = 0;
+	{
+		size_t newlen;
+		smart_str_alloc((&result),slen,0);
+	}
 
 	while (pos < slen) {
 		if ((pos + maxlen) > slen) {
@@ -2556,6 +2564,9 @@
 	char *r;
 	char *end = haystack + length;
 	smart_str result = {0};
+	size_t newlen; //used by smart_str_alloc
+
+	smart_str_alloc((&result),length,0);
 
 	for (p = haystack;
 			(r = php_memnstr(p, needle, needle_len, end));

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to