diff --git a/Neos.Flow/Classes/ResourceManagement/Target/FileSystemSymlinkTarget.php b/Neos.Flow/Classes/ResourceManagement/Target/FileSystemSymlinkTarget.php index 217386c3aa..961d69ed29 100644 --- a/Neos.Flow/Classes/ResourceManagement/Target/FileSystemSymlinkTarget.php +++ b/Neos.Flow/Classes/ResourceManagement/Target/FileSystemSymlinkTarget.php @@ -14,10 +14,9 @@ use Neos\Error\Messages\Error; use Neos\Flow\ResourceManagement\CollectionInterface; use Neos\Flow\ResourceManagement\Storage\PackageStorage; +use Neos\Flow\ResourceManagement\Target\Exception as TargetException; use Neos\Flow\Utility\Algorithms; use Neos\Utility\Files; -use Neos\Utility\Unicode\Functions as UnicodeFunctions; -use Neos\Flow\ResourceManagement\Target\Exception as TargetException; /** * A target which publishes resources by creating symlinks. @@ -58,8 +57,9 @@ public function publishCollection(CollectionInterface $collection, callable $cal */ protected function publishFile($sourceStream, $relativeTargetPathAndFilename) { - $pathInfo = UnicodeFunctions::pathinfo($relativeTargetPathAndFilename); - if (isset($pathInfo['extension']) && array_key_exists(strtolower($pathInfo['extension']), $this->excludedExtensions) && $this->excludedExtensions[strtolower($pathInfo['extension'])] === true) { + $pathInfo = pathinfo($relativeTargetPathAndFilename); + $extension = isset($pathInfo['extension']) ? strtolower($pathInfo['extension']) : null; + if ($extension !== null && array_key_exists($extension, $this->excludedExtensions) && $this->excludedExtensions[$extension] === true) { throw new TargetException(sprintf('Could not publish "%s" into resource publishing target "%s" because the filename extension "%s" is excluded.', $sourceStream, $this->name, strtolower($pathInfo['extension'])), 1447152230); }