From 05adee82ef8a68afd58cacf0ceb357ea9143462d Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Thu, 6 Oct 2016 15:54:54 +0200 Subject: [PATCH] [HttpKernel] Fix source links with latests Twig versions --- .../DataCollector/DumpDataCollector.php | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/Symfony/Component/HttpKernel/DataCollector/DumpDataCollector.php b/src/Symfony/Component/HttpKernel/DataCollector/DumpDataCollector.php index 985db4b133b58..36c1c42533155 100644 --- a/src/Symfony/Component/HttpKernel/DataCollector/DumpDataCollector.php +++ b/src/Symfony/Component/HttpKernel/DataCollector/DumpDataCollector.php @@ -97,21 +97,24 @@ public function dump(Data $data) break; } elseif (isset($trace[$i]['object']) && $trace[$i]['object'] instanceof \Twig_Template) { - $info = $trace[$i]['object']; - $name = $info->getTemplateName(); - $src = method_exists($info, 'getSource') ? $info->getSource() : $info->getEnvironment()->getLoader()->getSource($name); - $info = $info->getDebugInfo(); - if (null !== $src && isset($info[$trace[$i - 1]['line']])) { - $file = false; + $template = $trace[$i]['object']; + $name = $template->getTemplateName(); + $src = method_exists($template, 'getSource') ? $template->getSource() : false; + $info = $template->getDebugInfo(); + if (isset($info[$trace[$i - 1]['line']])) { $line = $info[$trace[$i - 1]['line']]; - $src = explode("\n", $src); - $fileExcerpt = array(); + $file = isset($info['file']) ? $info['file'] : false; - for ($i = max($line - 3, 1), $max = min($line + 3, count($src)); $i <= $max; ++$i) { - $fileExcerpt[] = ''.$this->htmlEncode($src[$i - 1]).''; - } + if ($src) { + $src = explode("\n", $src); + $fileExcerpt = array(); + + for ($i = max($line - 3, 1), $max = min($line + 3, count($src)); $i <= $max; ++$i) { + $fileExcerpt[] = ''.$this->htmlEncode($src[$i - 1]).''; + } - $fileExcerpt = '
    '.implode("\n", $fileExcerpt).'
'; + $fileExcerpt = '
    '.implode("\n", $fileExcerpt).'
'; + } } break; }