cvs: php-src /ext/standard string.c /ext/standard/tests/strings chunk_split.phpt

From: Date: Sun, 03 Apr 2005 18:08:41 +0000
Subject: cvs: php-src /ext/standard string.c /ext/standard/tests/strings chunk_split.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-31210@lists.php.net to get a copy of this message
iliaa Sun Apr 3 14:08:41 2005 EDT Modified files: /php-src/ext/standard string.c /php-src/ext/standard/tests/strings chunk_split.phpt Log: Fixed bug #32530 (chunk_split() does not append endstr if chunklen is longer then the original string). http://cvs.php.net/diff.php/php-src/ext/standard/string.c?r1=1.434&r2=1.435&ty=u Index: php-src/ext/standard/string.c diff -u php-src/ext/standard/string.c:1.434 php-src/ext/standard/string.c:1.435 --- php-src/ext/standard/string.c:1.434 Sat Mar 12 12:51:19 2005 +++ php-src/ext/standard/string.c Sun Apr 3 14:08:37 2005 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: string.c,v 1.434 2005/03/12 17:51:19 iliaa Exp $ */ +/* $Id: string.c,v 1.435 2005/04/03 18:08:37 iliaa Exp $ */ /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ @@ -1887,7 +1887,13 @@ } if (chunklen > Z_STRLEN_PP(p_str)) { - RETURN_STRINGL(Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str), 1); + /* to maintain BC, we must return original string + ending */ + result_len = endlen + Z_STRLEN_PP(p_str); + result = emalloc(result_len + 1); + memcpy(result, Z_STRVAL_PP(p_str), Z_STRLEN_PP(p_str)); + memcpy(result + Z_STRLEN_PP(p_str), end, endlen); + result[result_len] = '\0'; + RETURN_STRINGL(result, result_len, 0); } if (!Z_STRLEN_PP(p_str)) { http://cvs.php.net/diff.php/php-src/ext/standard/tests/strings/chunk_split.phpt?r1=1.2&r2=1.3&ty=u Index: php-src/ext/standard/tests/strings/chunk_split.phpt diff -u php-src/ext/standard/tests/strings/chunk_split.phpt:1.2 php-src/ext/standard/tests/strings/chunk_split.phpt:1.3 --- php-src/ext/standard/tests/strings/chunk_split.phpt:1.2 Wed May 19 04:45:23 2004 +++ php-src/ext/standard/tests/strings/chunk_split.phpt Sun Apr 3 14:08:40 2005 @@ -5,6 +5,7 @@ echo chunk_split('abc', 1, '-')."\n"; echo chunk_split('foooooooooooooooo', 5)."\n"; echo chunk_split(str_repeat('X', 2*76))."\n"; +echo chunk_split("test", 10, "|end") . "\n"; ?> --EXPECT-- a-b-c- @@ -15,3 +16,5 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX + +test|end

« previous php.cvs (#31210) next »