fixed escaping for filtered object attributes (closes #59)
authorFabien Potencier <fabien.potencier@gmail.com>
Fri, 11 Jun 2010 05:20:33 +0000 (07:20 +0200)
committerFabien Potencier <fabien.potencier@gmail.com>
Fri, 11 Jun 2010 05:20:38 +0000 (07:20 +0200)
lib/Twig/NodeVisitor/Escaper.php
test/fixtures/tags/autoescape/objects.test

index 1ceb38b..269dc47 100644 (file)
@@ -71,7 +71,7 @@ class Twig_NodeVisitor_Escaper implements Twig_NodeVisitorInterface
 
         if ($expression instanceof Twig_Node_Expression_Filter) {
             // don't escape if the primary node of the filter is not a variable
-            if (!$expression->node instanceof Twig_Node_Expression_Name) {
+            if (!$expression->node instanceof Twig_Node_Expression_GetAttr && !$expression->node instanceof Twig_Node_Expression_Name) {
                 return $node;
             }
 
index 533aa30..44f41e1 100644 (file)
@@ -3,6 +3,7 @@
 --TEMPLATE--
 {% autoescape on %}
 {{ user.name }}
+{{ user.name|lower }}
 {% endautoescape %}
 --DATA--
 class UserForAutoEscapeTest
@@ -15,3 +16,4 @@ class UserForAutoEscapeTest
 return array('user' => new UserForAutoEscapeTest())
 --EXPECT--
 Fabien&lt;br /&gt;
+fabien&lt;br /&gt;