From 53944831cf826a6f0fc08ab83960bc0a25ebba12 Mon Sep 17 00:00:00 2001 From: Justin Hileman Date: Sat, 23 Jul 2022 22:38:45 -0400 Subject: [PATCH] Fix dynamic name (and filter!) validation accidentally applying to comments. --- src/Mustache/Parser.php | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/Mustache/Parser.php b/src/Mustache/Parser.php index 1ad7e6d..563316e 100644 --- a/src/Mustache/Parser.php +++ b/src/Mustache/Parser.php @@ -86,19 +86,21 @@ class Mustache_Parser $this->lineTokens = 0; } - if ($this->pragmaDynamicNames && isset($token[Mustache_Tokenizer::NAME])) { - list($name, $isDynamic) = $this->getDynamicName($token); - if ($isDynamic) { - $token[Mustache_Tokenizer::NAME] = $name; - $token[Mustache_Tokenizer::DYNAMIC] = true; + if ($token[Mustache_Tokenizer::TYPE] !== Mustache_Tokenizer::T_COMMENT) { + if ($this->pragmaDynamicNames && isset($token[Mustache_Tokenizer::NAME])) { + list($name, $isDynamic) = $this->getDynamicName($token); + if ($isDynamic) { + $token[Mustache_Tokenizer::NAME] = $name; + $token[Mustache_Tokenizer::DYNAMIC] = true; + } } - } - if ($this->pragmaFilters && isset($token[Mustache_Tokenizer::NAME])) { - list($name, $filters) = $this->getNameAndFilters($token[Mustache_Tokenizer::NAME]); - if (!empty($filters)) { - $token[Mustache_Tokenizer::NAME] = $name; - $token[Mustache_Tokenizer::FILTERS] = $filters; + if ($this->pragmaFilters && isset($token[Mustache_Tokenizer::NAME])) { + list($name, $filters) = $this->getNameAndFilters($token[Mustache_Tokenizer::NAME]); + if (!empty($filters)) { + $token[Mustache_Tokenizer::NAME] = $name; + $token[Mustache_Tokenizer::FILTERS] = $filters; + } } }