From 8c32a8e936fcfa4e1d8d9f1eee7b4da0f6d1a2b5 Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Sun, 15 Jul 2012 19:49:08 +0200 Subject: [PATCH] fixed guessRoute() --- .../DataCollector/RouterDataCollector.php | 10 +++++++++- .../HttpKernel/DataCollector/ConfigDataCollector.php | 1 - .../HttpKernel/DataCollector/RouterDataCollector.php | 7 +------ 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/DataCollector/RouterDataCollector.php b/src/Symfony/Bundle/FrameworkBundle/DataCollector/RouterDataCollector.php index 6c8eb7a912..ca54b0548d 100644 --- a/src/Symfony/Bundle/FrameworkBundle/DataCollector/RouterDataCollector.php +++ b/src/Symfony/Bundle/FrameworkBundle/DataCollector/RouterDataCollector.php @@ -22,8 +22,16 @@ use Symfony\Bundle\FrameworkBundle\Controller\RedirectController; */ class RouterDataCollector extends BaseRouterDataCollector { - public function getRoute(Request $request, $controller) + public function guessRoute(Request $request, $controller) { + if (!$controller instanceof RedirectController) { + return parent::guessRoute($request, $controller); + } + + if (is_array($controller)) { + $controller = $controller[0]; + } + if ($controller instanceof RedirectController) { return $request->attributes->get('_route'); } diff --git a/src/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php b/src/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php index 61b22f131a..81ede39ced 100644 --- a/src/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php +++ b/src/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php @@ -55,7 +55,6 @@ class ConfigDataCollector extends DataCollector 'bundles' => array(), ); - $this->data['bundles'] = array(); if (isset($this->kernel)) { foreach ($this->kernel->getBundles() as $name => $bundle) { $this->data['bundles'][$name] = $bundle->getPath(); diff --git a/src/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php b/src/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php index ffe80adcc4..07b27808c2 100644 --- a/src/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php +++ b/src/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php @@ -47,12 +47,7 @@ class RouterDataCollector extends DataCollector $this->data['url'] = $response->getTargetUrl(); if ($this->controllers->contains($request)) { - $controller = $this->controllers[$request]; - if (is_array($controller)) { - $controller = $controller[0]; - } - - $this->data['route'] = $this->guessRoute($request, $controller); + $this->data['route'] = $this->guessRoute($request, $this->controllers[$request]); } } }