diff options
author | Felipe Pena <felipe@php.net> | 2008-12-30 02:17:30 +0000 |
---|---|---|
committer | Felipe Pena <felipe@php.net> | 2008-12-30 02:17:30 +0000 |
commit | 9212a9584e0e6815a42b39b96aef0859c89d8e6e (patch) | |
tree | f5e8c011911ccc109885903115517fdf8686f517 | |
parent | c168107cbf95af833689c14e51ac9feae8574161 (diff) | |
download | php-git-9212a9584e0e6815a42b39b96aef0859c89d8e6e.tar.gz |
- MFH: Bug #46763 (mb_stristr() wrong output when needle does not exist) (patch by Henrique M. Decaria)
-rw-r--r-- | ext/mbstring/mbstring.c | 3 | ||||
-rw-r--r-- | ext/mbstring/tests/mb_stristr_variation1.phpt | 40 | ||||
-rw-r--r-- | ext/mbstring/tests/mb_stristr_variation2.phpt | 24 |
3 files changed, 34 insertions, 33 deletions
diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index 2bd4fdd388..a4cd45c24d 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -2555,7 +2555,8 @@ PHP_FUNCTION(mb_strrchr) PHP_FUNCTION(mb_stristr) { zend_bool part = 0; - unsigned int n, from_encoding_len, len, mblen; + unsigned int from_encoding_len, len, mblen; + int n; mbfl_string haystack, needle, result, *ret = NULL; const char *from_encoding = mbfl_no2preferred_mime_name(MBSTRG(current_internal_encoding)); mbfl_string_init(&haystack); diff --git a/ext/mbstring/tests/mb_stristr_variation1.phpt b/ext/mbstring/tests/mb_stristr_variation1.phpt index 2d78c032c5..fc69bd065e 100644 --- a/ext/mbstring/tests/mb_stristr_variation1.phpt +++ b/ext/mbstring/tests/mb_stristr_variation1.phpt @@ -122,31 +122,31 @@ fclose($fp); *** Testing mb_stristr() : usage variation *** --int 0-- -string(0) "" +bool(false) --int 1-- -string(0) "" +bool(false) --int 12345-- -string(0) "" +bool(false) --int -12345-- -string(0) "" +bool(false) --float 10.5-- -string(0) "" +bool(false) --float -10.5-- -string(0) "" +bool(false) --float 12.3456789000e10-- -string(0) "" +bool(false) --float -12.3456789000e10-- -string(0) "" +bool(false) --float .5-- -string(0) "" +bool(false) --empty array-- Error: 2 - mb_stristr() expects parameter 1 to be string, array given, %s(%d) @@ -165,41 +165,41 @@ Error: 2 - mb_stristr() expects parameter 1 to be string, array given, %s(%d) bool(false) --uppercase NULL-- -string(0) "" +bool(false) --lowercase null-- -string(0) "" +bool(false) --lowercase true-- -string(0) "" +bool(false) --lowercase false-- -string(0) "" +bool(false) --uppercase TRUE-- -string(0) "" +bool(false) --uppercase FALSE-- -string(0) "" +bool(false) --empty string DQ-- -string(0) "" +bool(false) --empty string SQ-- -string(0) "" +bool(false) --instance of classWithToString-- -string(0) "" +bool(false) --instance of classWithoutToString-- Error: 2 - mb_stristr() expects parameter 1 to be string, object given, %s(%d) bool(false) --undefined var-- -string(0) "" +bool(false) --unset var-- -string(0) "" +bool(false) --resource-- Error: 2 - mb_stristr() expects parameter 1 to be string, resource given, %s(%d) diff --git a/ext/mbstring/tests/mb_stristr_variation2.phpt b/ext/mbstring/tests/mb_stristr_variation2.phpt index 62c597f2f7..a53642d8f0 100644 --- a/ext/mbstring/tests/mb_stristr_variation2.phpt +++ b/ext/mbstring/tests/mb_stristr_variation2.phpt @@ -122,31 +122,31 @@ fclose($fp); *** Testing mb_stristr() : usage variation *** --int 0-- -string(0) "" +bool(false) --int 1-- -string(0) "" +bool(false) --int 12345-- -string(0) "" +bool(false) --int -12345-- -string(0) "" +bool(false) --float 10.5-- -string(0) "" +bool(false) --float -10.5-- -string(0) "" +bool(false) --float 12.3456789000e10-- -string(0) "" +bool(false) --float -12.3456789000e10-- -string(0) "" +bool(false) --float .5-- -string(0) "" +bool(false) --empty array-- Error: 2 - mb_stristr() expects parameter 2 to be string, array given, %s(%d) @@ -173,14 +173,14 @@ Error: 2 - mb_stristr(): Empty delimiter., %s(%d) bool(false) --lowercase true-- -string(0) "" +bool(false) --lowercase false-- Error: 2 - mb_stristr(): Empty delimiter., %s(%d) bool(false) --uppercase TRUE-- -string(0) "" +bool(false) --uppercase FALSE-- Error: 2 - mb_stristr(): Empty delimiter., %s(%d) @@ -195,7 +195,7 @@ Error: 2 - mb_stristr(): Empty delimiter., %s(%d) bool(false) --instance of classWithToString-- -string(0) "" +bool(false) --instance of classWithoutToString-- Error: 2 - mb_stristr() expects parameter 2 to be string, object given, %s(%d) |