From 25c4ff3b9c0bb30d9a3c4559da9171d91d8c41bb Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Tue, 15 Jun 2010 23:22:54 +0200 Subject: [PATCH] fixed toolbar setting when overridden --- .../Components/DependencyInjection/Definition.php | 12 ++++++++++++ .../DependencyInjection/ProfilerExtension.php | 12 +++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Components/DependencyInjection/Definition.php b/src/Symfony/Components/DependencyInjection/Definition.php index d2d990bcf31b..92998e442729 100644 --- a/src/Symfony/Components/DependencyInjection/Definition.php +++ b/src/Symfony/Components/DependencyInjection/Definition.php @@ -217,6 +217,18 @@ public function addAnnotation($name, array $attributes = array()) return $this; } + /** + * Clears the annotation for this definition. + * + * @return Definition The current instance + */ + public function clearAnnotations() + { + $this->annotations = array(); + + return $this; + } + /** * Sets a file to require before creating the service. * diff --git a/src/Symfony/Framework/ProfilerBundle/DependencyInjection/ProfilerExtension.php b/src/Symfony/Framework/ProfilerBundle/DependencyInjection/ProfilerExtension.php index 890d6a1c0e28..c47295adc5d5 100644 --- a/src/Symfony/Framework/ProfilerBundle/DependencyInjection/ProfilerExtension.php +++ b/src/Symfony/Framework/ProfilerBundle/DependencyInjection/ProfilerExtension.php @@ -31,9 +31,15 @@ public function configLoad($config, BuilderConfiguration $configuration) $configuration->merge($loader->load('collectors.xml')); } - if (isset($config['toolbar']) && $config['toolbar'] && !$configuration->hasDefinition('debug.toolbar')) { - $loader = new XmlFileLoader(__DIR__.'/../Resources/config'); - $configuration->merge($loader->load('toolbar.xml')); + if (isset($config['toolbar'])) { + if ($config['toolbar']) { + if (!$configuration->hasDefinition('debug.toolbar')) { + $loader = new XmlFileLoader(__DIR__.'/../Resources/config'); + $configuration->merge($loader->load('toolbar.xml')); + } + } else { + $configuration->getDefinition('debug.toolbar')->clearAnnotations(); + } } return $configuration;