[DI] Use GlobResource for non-tracked directories
This commit is contained in:
parent
eea78fdc78
commit
048eb186c7
@ -1346,7 +1346,7 @@ class FrameworkExtension extends Extension
|
||||
$fileRecorder('yml', $file);
|
||||
}
|
||||
|
||||
if ($container->fileExists($dir = $dirname.'/Resources/config/serialization')) {
|
||||
if ($container->fileExists($dir = $dirname.'/Resources/config/serialization', '/^$/')) {
|
||||
$this->registerMappingFilesFromDir($dir, $fileRecorder);
|
||||
}
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ namespace Symfony\Bundle\TwigBundle\DependencyInjection;
|
||||
|
||||
use Symfony\Bridge\Twig\Extension\WebLinkExtension;
|
||||
use Symfony\Component\Config\FileLocator;
|
||||
use Symfony\Component\Config\Resource\FileExistenceResource;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\Reference;
|
||||
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
|
||||
@ -118,9 +119,10 @@ class TwigExtension extends Extension
|
||||
}
|
||||
}
|
||||
|
||||
if ($container->fileExists($dir = $container->getParameter('kernel.root_dir').'/Resources/views', false)) {
|
||||
if (file_exists($dir = $container->getParameter('kernel.root_dir').'/Resources/views')) {
|
||||
$twigFilesystemLoaderDefinition->addMethodCall('addPath', array($dir));
|
||||
}
|
||||
$container->addResource(new FileExistenceResource($dir));
|
||||
|
||||
if (!empty($config['globals'])) {
|
||||
$def = $container->getDefinition('twig');
|
||||
@ -178,13 +180,15 @@ class TwigExtension extends Extension
|
||||
);
|
||||
}
|
||||
|
||||
if ($container->fileExists($dir = $container->getParameter('kernel.root_dir').'/Resources/'.$name.'/views', false)) {
|
||||
if (file_exists($dir = $container->getParameter('kernel.root_dir').'/Resources/'.$name.'/views')) {
|
||||
$bundleHierarchy[$name]['paths'][] = $dir;
|
||||
}
|
||||
$container->addResource(new FileExistenceResource($dir));
|
||||
|
||||
if ($container->fileExists($dir = $bundle['path'].'/Resources/views', false)) {
|
||||
if (file_exists($dir = $bundle['path'].'/Resources/views')) {
|
||||
$bundleHierarchy[$name]['paths'][] = $dir;
|
||||
}
|
||||
$container->addResource(new FileExistenceResource($dir));
|
||||
|
||||
if (null === $bundle['parent']) {
|
||||
continue;
|
||||
|
@ -407,9 +407,13 @@ class ContainerBuilder extends Container implements TaggedContainerInterface
|
||||
return $exists;
|
||||
}
|
||||
|
||||
if ($trackContents && is_dir($path)) {
|
||||
$this->addResource(new DirectoryResource($path, is_string($trackContents) ? $trackContents : null));
|
||||
} elseif ($trackContents || is_dir($path)) {
|
||||
if (is_dir($path)) {
|
||||
if ($trackContents) {
|
||||
$this->addResource(new DirectoryResource($path, is_string($trackContents) ? $trackContents : null));
|
||||
} else {
|
||||
$this->addResource(new GlobResource($path, '/*', false));
|
||||
}
|
||||
} elseif ($trackContents) {
|
||||
$this->addResource(new FileResource($path));
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user