浏览代码

[TwigBundle] fixed cache warmer when there is a template with a syntax error

Fabien Potencier 14 年之前
父节点
当前提交
8c89da0004
共有 1 个文件被更改,包括 7 次插入1 次删除
  1. 7 1
      src/Symfony/Bundle/TwigBundle/CacheWarmer/TemplateCacheCacheWarmer.php

+ 7 - 1
src/Symfony/Bundle/TwigBundle/CacheWarmer/TemplateCacheCacheWarmer.php

@@ -54,8 +54,14 @@ class TemplateCacheCacheWarmer implements CacheWarmerInterface
         $twig = $this->container->get('twig');
 
         foreach ($this->finder->findAllTemplates() as $template) {
-            if ('twig' === $template->get('engine')) {
+            if ('twig' !== $template->get('engine')) {
+                continue;
+            }
+
+            try {
                 $twig->loadTemplate($template);
+            } catch (\Twig_Error $e) {
+                // problem during compilation, give up
             }
         }
     }