diff options
| author | Christoph M. Becker <cmb@php.net> | 2016-07-28 15:24:41 +0200 |
|---|---|---|
| committer | Christoph M. Becker <cmb@php.net> | 2016-07-28 15:26:29 +0200 |
| commit | 805dc0ea4790b8e3dda63ae5753de14823a09bde (patch) | |
| tree | d2ae09abd24008c9ae9ddd4f7bebeb1c37409938 /ext/mbstring | |
| parent | a621023168ee00104dac20c996df3c9e8ad8edcf (diff) | |
| parent | ee6900c3de68f1b94dfae8e230c7fa755c7fa595 (diff) | |
| download | php-git-805dc0ea4790b8e3dda63ae5753de14823a09bde.tar.gz | |
Merge branch 'PHP-5.6' into PHP-7.0
# Resolved conflicts:
# ext/mbstring/php_mbregex.c
Diffstat (limited to 'ext/mbstring')
| -rw-r--r-- | ext/mbstring/php_mbregex.c | 2 | ||||
| -rw-r--r-- | ext/mbstring/tests/bug72694.phpt | 21 |
2 files changed, 22 insertions, 1 deletions
diff --git a/ext/mbstring/php_mbregex.c b/ext/mbstring/php_mbregex.c index c86ea53ea1..fc0b1d43e2 100644 --- a/ext/mbstring/php_mbregex.c +++ b/ext/mbstring/php_mbregex.c @@ -1408,7 +1408,7 @@ PHP_FUNCTION(mb_ereg_search_setpos) return; } - if (position < 0 || (!Z_ISUNDEF(MBREX(search_str)) && Z_TYPE(MBREX(search_str)) == IS_STRING && (size_t)position >= Z_STRLEN(MBREX(search_str)))) { + if (position < 0 || (!Z_ISUNDEF(MBREX(search_str)) && Z_TYPE(MBREX(search_str)) == IS_STRING && (size_t)position > Z_STRLEN(MBREX(search_str)))) { php_error_docref(NULL, E_WARNING, "Position is out of range"); MBREX(search_pos) = 0; RETURN_FALSE; diff --git a/ext/mbstring/tests/bug72694.phpt b/ext/mbstring/tests/bug72694.phpt new file mode 100644 index 0000000000..90f56a397a --- /dev/null +++ b/ext/mbstring/tests/bug72694.phpt @@ -0,0 +1,21 @@ +--TEST-- +Bug #72694 (mb_ereg_search_setpos does not accept a string's last position) +--SKIPIF-- +<?php +if (!extension_loaded('mbstring')) die('skip ext/mbstring required'); +?> +--FILE-- +<?php +mb_ereg_search_init('foo'); + +var_dump(mb_ereg_search_setpos(3)); +var_dump(mb_ereg_search_getpos()); + +var_dump(mb_ereg_search('\Z')); +var_dump(mb_ereg_search_getpos()); +?> +--EXPECT-- +bool(true) +int(3) +bool(true) +int(3) |
