mirror of
https://github.com/php/php-src.git
synced 2024-09-21 18:07:23 +00:00
Fix #72691: mb_ereg_search raises a warning if a match zero-width
That warning doesn't make sense (PCRE doesn't throw such a warning either), so we remove it.
This commit is contained in:
parent
0ae8c337a3
commit
d276e6a838
5
NEWS
5
NEWS
@ -40,6 +40,11 @@ PHP NEWS
|
||||
- Intl:
|
||||
. Partially fixed #72506 (idn_to_ascii for UTS #46 incorrect for long domain
|
||||
names). (cmb)
|
||||
|
||||
- mbstring:
|
||||
. Fixed bug #72691 (mb_ereg_search raises a warning if a match zero-width).
|
||||
(cmb)
|
||||
|
||||
- PCRE:
|
||||
. Fixed bug #72688 (preg_match missing group names in matches). (cmb)
|
||||
|
||||
|
@ -1235,9 +1235,6 @@ _php_mb_regex_ereg_search_exec(INTERNAL_FUNCTION_PARAMETERS, int mode)
|
||||
php_error_docref(NULL TSRMLS_CC, E_WARNING, "mbregex search failure in mbregex_search(): %s", err_str);
|
||||
RETVAL_FALSE;
|
||||
} else {
|
||||
if (MBREX(search_regs)->beg[0] == MBREX(search_regs)->end[0]) {
|
||||
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Empty regular expression");
|
||||
}
|
||||
switch (mode) {
|
||||
case 1:
|
||||
array_init(return_value);
|
||||
|
48
ext/mbstring/tests/bug72691.phpt
Normal file
48
ext/mbstring/tests/bug72691.phpt
Normal file
@ -0,0 +1,48 @@
|
||||
--TEST--
|
||||
Bug #72691 (mb_ereg_search raises a warning if a match zero-width)
|
||||
--SKIPIF--
|
||||
<?php
|
||||
if (!extension_loaded('mbstring')) die('skip ext/mbstring required');
|
||||
?>
|
||||
--FILE--
|
||||
<?php
|
||||
$str = 'foo';
|
||||
mb_ereg_search_init($str);
|
||||
|
||||
mb_ereg_search('\A');
|
||||
var_dump(mb_ereg_search_getpos());
|
||||
var_dump(mb_ereg_search_getregs());
|
||||
|
||||
mb_ereg_search('\s*');
|
||||
var_dump(mb_ereg_search_getpos());
|
||||
var_dump(mb_ereg_search_getregs());
|
||||
|
||||
mb_ereg_search('\w+');
|
||||
var_dump(mb_ereg_search_getpos());
|
||||
var_dump(mb_ereg_search_getregs());
|
||||
|
||||
mb_ereg_search('\Z');
|
||||
var_dump(mb_ereg_search_getpos());
|
||||
var_dump(mb_ereg_search_getregs());
|
||||
?>
|
||||
--EXPECT--
|
||||
int(1)
|
||||
array(1) {
|
||||
[0]=>
|
||||
string(0) ""
|
||||
}
|
||||
int(2)
|
||||
array(1) {
|
||||
[0]=>
|
||||
string(0) ""
|
||||
}
|
||||
int(3)
|
||||
array(1) {
|
||||
[0]=>
|
||||
string(1) "o"
|
||||
}
|
||||
int(4)
|
||||
array(1) {
|
||||
[0]=>
|
||||
string(0) ""
|
||||
}
|
Loading…
Reference in New Issue
Block a user