aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/template/twig/lexer.php
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/phpbb/template/twig/lexer.php')
-rw-r--r--phpBB/phpbb/template/twig/lexer.php11
1 files changed, 10 insertions, 1 deletions
diff --git a/phpBB/phpbb/template/twig/lexer.php b/phpBB/phpbb/template/twig/lexer.php
index f1542109a4..d0bcfa615e 100644
--- a/phpBB/phpbb/template/twig/lexer.php
+++ b/phpBB/phpbb/template/twig/lexer.php
@@ -22,6 +22,14 @@ class lexer extends \Twig_Lexer
public function tokenize($code, $filename = null)
{
+ // Handle \Twig_Source format input
+ if ($code instanceof \Twig_Source)
+ {
+ $source = $code;
+ $code = $source->getCode();
+ $filename = $source->getName();
+ }
+
// Our phpBB tags
// Commented out tokens are handled separately from the main replace
$phpbb_tags = array(
@@ -125,7 +133,8 @@ class lexer extends \Twig_Lexer
// Appends any filters
$code = preg_replace('#{([a-zA-Z0-9_\.]+)(\|[^}]+?)?}#', '{{ $1$2 }}', $code);
- return parent::tokenize($code, $filename);
+ // Tokenize \Twig_Source instance
+ return parent::tokenize(new \Twig_Source($code, $filename));
}
/**