From 6161438f57458d78b494b4cde3542a550d6232d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Haso=C5=88?= Date: Thu, 25 Feb 2016 23:33:26 +0100 Subject: [PATCH] [DependencyInjection] Enabled alias for service_container --- .../Compiler/ReplaceAliasByActualDefinitionPass.php | 4 ++++ .../Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php b/src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php index fef070bcff..6a6b214bb3 100644 --- a/src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php +++ b/src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php @@ -42,6 +42,10 @@ class ReplaceAliasByActualDefinitionPass implements CompilerPassInterface foreach ($container->getAliases() as $id => $alias) { $aliasId = (string) $alias; + if ('service_container' === $aliasId) { + continue; + } + try { $definition = $container->getDefinition($aliasId); } catch (InvalidArgumentException $e) { diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php index ac1609f5d7..c4470dd402 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php @@ -32,6 +32,8 @@ class ReplaceAliasByActualDefinitionPassTest extends \PHPUnit_Framework_TestCase $container->setAlias('a_alias', 'a'); $container->setAlias('b_alias', 'b'); + $container->setAlias('container', 'service_container'); + $this->process($container); $this->assertTrue($container->has('a'), '->process() does nothing to public definitions.'); @@ -42,6 +44,7 @@ class ReplaceAliasByActualDefinitionPassTest extends \PHPUnit_Framework_TestCase '->process() replaces alias to actual.' ); $this->assertSame('b_alias', $aDefinition->getFactoryService()); + $this->assertTrue($container->has('container')); } /**