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

From: Date: Sat, 27 Dec 2008 05:13:30 +0000
Subject: cvs: php-src /ext/standard string.c /ext/standard/tests/strings explode.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-55134@lists.php.net to get a copy of this message
shire Sat Dec 27 05:13:30 2008 UTC Modified files: /php-src/ext/standard string.c /php-src/ext/standard/tests/strings explode.phpt Log: fix explode behavior to respect negative limit when string is empty. http://cvs.php.net/viewvc.cgi/php-src/ext/standard/string.c?r1=1.686&r2=1.687&diff_format=u Index: php-src/ext/standard/string.c diff -u php-src/ext/standard/string.c:1.686 php-src/ext/standard/string.c:1.687 --- php-src/ext/standard/string.c:1.686 Mon Nov 24 19:31:02 2008 +++ php-src/ext/standard/string.c Sat Dec 27 05:13:29 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: string.c,v 1.686 2008/11/24 19:31:02 lbarnaud Exp $ */ +/* $Id: string.c,v 1.687 2008/12/27 05:13:29 shire Exp $ */ /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ @@ -1294,10 +1294,12 @@ array_init(return_value); if ( str_len == 0 ) { - if ( str_type == IS_UNICODE ) { - add_next_index_unicodel(return_value, USTR_MAKE(""), sizeof("")-1, 0); - } else { - add_next_index_stringl(return_value, "", sizeof("")-1, 1); + if (limit >= 0 || argc == 2) { + if ( str_type == IS_UNICODE ) { + add_next_index_unicodel(return_value, USTR_MAKE(""), sizeof("")-1, 0); + } else { + add_next_index_stringl(return_value, "", sizeof("")-1, 1); + } } return; } http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/explode.phpt?r1=1.9&r2=1.10&diff_format=u Index: php-src/ext/standard/tests/strings/explode.phpt diff -u php-src/ext/standard/tests/strings/explode.phpt:1.9 php-src/ext/standard/tests/strings/explode.phpt:1.10 --- php-src/ext/standard/tests/strings/explode.phpt:1.9 Tue May 27 10:50:45 2008 +++ php-src/ext/standard/tests/strings/explode.phpt Sat Dec 27 05:13:30 2008 @@ -18,6 +18,7 @@ var_dump(@explode(NULL, a)); var_dump(@explode("abc", "acb")); var_dump(@explode("somestring", "otherstring")); +var_dump(@explode("somestring", "otherstring", -1)); var_dump(@explode("a", "aaaaaa")); var_dump(@explode("==", str_repeat("-=".ord(0)."=-", 10))); var_dump(@explode("=", str_repeat("-=".ord(0)."=-", 10))); @@ -64,6 +65,8 @@ [0]=> unicode(11) "otherstring" } +array(0) { +} array(7) { [0]=> unicode(0) ""

« previous php.cvs (#55134) next »