[ticket/12589] Fix tests

PHPBB3-12589
This commit is contained in:
Tristan Darricau 2014-05-24 18:58:52 +02:00
parent f7896f46a5
commit 930c5d85ed

View file

@ -462,8 +462,11 @@ class finder
$directory_pattern = '^' . preg_quote(DIRECTORY_SEPARATOR, '#'); $directory_pattern = '^' . preg_quote(DIRECTORY_SEPARATOR, '#');
} }
else if ($directory && $directory[0] === '/') else if ($directory && $directory[0] === '/')
{
if (!$is_dir)
{ {
$path .= substr($directory, 1); $path .= substr($directory, 1);
}
$directory_pattern = '^' . preg_quote(str_replace('/', DIRECTORY_SEPARATOR, $directory) . DIRECTORY_SEPARATOR, '#'); $directory_pattern = '^' . preg_quote(str_replace('/', DIRECTORY_SEPARATOR, $directory) . DIRECTORY_SEPARATOR, '#');
} }
else else
@ -476,6 +479,8 @@ class finder
} }
$directory_pattern = '#' . $directory_pattern . '#'; $directory_pattern = '#' . $directory_pattern . '#';
if (is_dir($path))
{
$iterator = new \RecursiveIteratorIterator( $iterator = new \RecursiveIteratorIterator(
new \phpbb\recursive_dot_prefix_filter_iterator( new \phpbb\recursive_dot_prefix_filter_iterator(
new \RecursiveDirectoryIterator( new \RecursiveDirectoryIterator(
@ -495,18 +500,14 @@ class finder
if ($is_dir) if ($is_dir)
{ {
$relative_path = $iterator->getInnerIterator()->getSubPath() . DIRECTORY_SEPARATOR . basename($filename) . DIRECTORY_SEPARATOR; $relative_path = $iterator->getInnerIterator()->getSubPath() . DIRECTORY_SEPARATOR . basename($filename) . DIRECTORY_SEPARATOR;
if ($directory && $directory[0] === '/') if ($relative_path[0] !== DIRECTORY_SEPARATOR)
{
$relative_path = str_replace('/', DIRECTORY_SEPARATOR, $directory) . DIRECTORY_SEPARATOR . $relative_path;
}
else if ($relative_path[0] !== DIRECTORY_SEPARATOR)
{ {
$relative_path = DIRECTORY_SEPARATOR . $relative_path; $relative_path = DIRECTORY_SEPARATOR . $relative_path;
} }
} }
else else
{ {
$relative_path = DIRECTORY_SEPARATOR . $iterator->getInnerIterator()->getSubPathname(); $relative_path = $iterator->getInnerIterator()->getSubPathname();
if ($directory && $directory[0] === '/') if ($directory && $directory[0] === '/')
{ {
$relative_path = str_replace('/', DIRECTORY_SEPARATOR, $directory) . DIRECTORY_SEPARATOR . $relative_path; $relative_path = str_replace('/', DIRECTORY_SEPARATOR, $directory) . DIRECTORY_SEPARATOR . $relative_path;
@ -531,6 +532,7 @@ class finder
} }
} }
} }
}
if ($cache && $this->cache) if ($cache && $this->cache)
{ {