From 98e035b9634f58dddc6bc9fdbf6fc6169f11a47b Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sat, 12 Feb 2011 15:43:38 +0100 Subject: [PATCH] [DepdenencyInjection] Prevent self-referencing aliases --- .../Component/DependencyInjection/ContainerBuilder.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Symfony/Component/DependencyInjection/ContainerBuilder.php b/src/Symfony/Component/DependencyInjection/ContainerBuilder.php index 008ef416c2..eb38fc4ced 100644 --- a/src/Symfony/Component/DependencyInjection/ContainerBuilder.php +++ b/src/Symfony/Component/DependencyInjection/ContainerBuilder.php @@ -427,6 +427,10 @@ class ContainerBuilder extends Container implements TaggedContainerInterface throw new \InvalidArgumentException('$id must be a string, or an Alias object.'); } + if ($alias === strtolower($id)) { + throw new \InvalidArgumentException('An alias can not reference itself, got a circular reference on "'.$alias.'".'); + } + unset($this->definitions[$alias]); $this->aliases[$alias] = $id;