diff --git a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php
index d619de0d81cec..36cea3d0fed1a 100644
--- a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php
+++ b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php
@@ -45,7 +45,7 @@ public function process(ContainerBuilder $container)
if ($container->has('form.extension')) {
$container->getDefinition('twig.extension.form')->addTag('twig.extension');
$reflClass = new \ReflectionClass('Symfony\Bridge\Twig\Extension\FormExtension');
- $container->getDefinition('twig.loader.filesystem')->addMethodCall('addPath', array(dirname(dirname($reflClass->getFileName())).'/Resources/views/Form'));
+ $container->getDefinition('twig.loader.native_filesystem')->addMethodCall('addPath', array(dirname(dirname($reflClass->getFileName())).'/Resources/views/Form'));
}
if ($container->has('fragment.handler')) {
@@ -88,11 +88,13 @@ public function process(ContainerBuilder $container)
$container->getDefinition('twig.extension.debug')->addTag('twig.extension');
}
- if (!$container->has('templating')) {
- $loader = $container->getDefinition('twig.loader.native_filesystem');
- $loader->addTag('twig.loader');
- $loader->setMethodCalls($container->getDefinition('twig.loader.filesystem')->getMethodCalls());
+ $twigLoader = $container->getDefinition('twig.loader.native_filesystem');
+ if ($container->has('templating')) {
+ $loader = $container->getDefinition('twig.loader.filesystem');
+ $loader->setMethodCalls($twigLoader->getMethodCalls());
+ $twigLoader->clearTag('twig.loader');
+ } else {
$container->setAlias('twig.loader.filesystem', new Alias('twig.loader.native_filesystem', false));
}
diff --git a/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php b/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
index e9f55f758da21..e6ea35b3bdc1f 100644
--- a/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
+++ b/src/Symfony/Bundle/TwigBundle/DependencyInjection/TwigExtension.php
@@ -77,7 +77,7 @@ public function load(array $configs, ContainerBuilder $container)
$envConfiguratorDefinition->replaceArgument(4, $config['number_format']['decimal_point']);
$envConfiguratorDefinition->replaceArgument(5, $config['number_format']['thousands_separator']);
- $twigFilesystemLoaderDefinition = $container->getDefinition('twig.loader.filesystem');
+ $twigFilesystemLoaderDefinition = $container->getDefinition('twig.loader.native_filesystem');
// register user-configured paths
foreach ($config['paths'] as $path => $namespace) {
diff --git a/src/Symfony/Bundle/TwigBundle/Resources/config/templating.xml b/src/Symfony/Bundle/TwigBundle/Resources/config/templating.xml
index 5a39c95018c0b..c1c57d928da71 100644
--- a/src/Symfony/Bundle/TwigBundle/Resources/config/templating.xml
+++ b/src/Symfony/Bundle/TwigBundle/Resources/config/templating.xml
@@ -10,8 +10,6 @@
-
-
diff --git a/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml b/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
index c08be1f0399ed..457cb5c06abf1 100644
--- a/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
+++ b/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
@@ -53,6 +53,7 @@
+
diff --git a/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php b/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
index ab4d649428a58..ff4103d29135c 100644
--- a/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
+++ b/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
@@ -187,7 +187,7 @@ public function testTwigLoaderPaths($format)
$this->loadFromFile($container, 'extra', $format);
$this->compileContainer($container);
- $def = $container->getDefinition('twig.loader.filesystem');
+ $def = $container->getDefinition('twig.loader.native_filesystem');
$paths = array();
foreach ($def->getMethodCalls() as $call) {
if ('addPath' === $call[0] && false === strpos($call[1][0], 'Form')) {