Fixed resetting debug info in compiler
authorMartin Hasoň <martin.hason@gmail.com>
Fri, 10 Oct 2014 10:23:53 +0000 (12:23 +0200)
committerMartin Hasoň <martin.hason@gmail.com>
Fri, 10 Oct 2014 10:25:51 +0000 (12:25 +0200)
lib/Twig/Compiler.php
test/Twig/Tests/Fixtures/regression/combined_debug_info.test [new file with mode: 0644]

index 2a492b7..93dc876 100644 (file)
@@ -74,6 +74,7 @@ class Twig_Compiler implements Twig_CompilerInterface
     {
         $this->lastLine = null;
         $this->source = '';
+        $this->debugInfo = array();
         $this->sourceOffset = 0;
         // source code starts at 1 (as we then increment it when we encounter new lines)
         $this->sourceLine = 1;
diff --git a/test/Twig/Tests/Fixtures/regression/combined_debug_info.test b/test/Twig/Tests/Fixtures/regression/combined_debug_info.test
new file mode 100644 (file)
index 0000000..df48578
--- /dev/null
@@ -0,0 +1,15 @@
+--TEST--
+Exception with bad line number
+--TEMPLATE--
+{% block content %}
+    {{ foo }}
+    {{ include("foo") }}
+{% endblock %}
+index
+--TEMPLATE(foo)--
+foo
+{{ foo.bar }}
+--DATA--
+return array('foo' => 'foo');
+--EXCEPTION--
+Twig_Error_Runtime: Impossible to access an attribute ("bar") on a string variable ("foo") in "foo" at line 3