mirror of
https://github.com/php/php-src.git
synced 2024-11-23 18:04:36 +08:00
Added %r section
This commit is contained in:
parent
7834afebde
commit
2c7d95c5a6
@ -1737,7 +1737,33 @@ COMMAND $cmd
|
||||
$wanted_re = preg_replace('/\r\n/', "\n", $wanted);
|
||||
|
||||
if (isset($section_text['EXPECTF'])) {
|
||||
$wanted_re = preg_quote($wanted_re, '/');
|
||||
|
||||
// do preg_quote, but miss out any %r delimited sections
|
||||
$temp = "";
|
||||
$r = "%r";
|
||||
$startOffset = 0;
|
||||
$length = strlen($wanted_re);
|
||||
while($startOffset < $length) {
|
||||
$start = strpos($wanted_re, $r, $startOffset);
|
||||
if ($start !== false) {
|
||||
// we have found a start tag
|
||||
$end = strpos($wanted_re, $r, $start+2);
|
||||
if ($end === false) {
|
||||
// unbalanced tag, ignore it.
|
||||
$end = $start = $length;
|
||||
}
|
||||
} else {
|
||||
// no more %r sections
|
||||
$start = $end = $length;
|
||||
}
|
||||
// quote a non re portion of the string
|
||||
$temp = $temp . preg_quote(substr($wanted_re, $startOffset, ($start - $startOffset)), '/');
|
||||
// add the re unquoted.
|
||||
$temp = $temp . substr($wanted_re, $start+2, ($end - $start-2));
|
||||
$startOffset = $end + 2;
|
||||
}
|
||||
$wanted_re = $temp;
|
||||
|
||||
$wanted_re = str_replace(
|
||||
array('%binary_string_optional%'),
|
||||
version_compare(PHP_VERSION, '6.0.0-dev') == -1 ? 'string' : 'binary string',
|
||||
|
Loading…
Reference in New Issue
Block a user