Fix dynamic name (and filter!) validation accidentally applying to comments.

This commit is contained in:
Justin Hileman
2022-08-23 09:11:52 -04:00
parent 454b4c63e9
commit 53944831cf
+13 -11
View File
@@ -86,19 +86,21 @@ class Mustache_Parser
$this->lineTokens = 0; $this->lineTokens = 0;
} }
if ($this->pragmaDynamicNames && isset($token[Mustache_Tokenizer::NAME])) { if ($token[Mustache_Tokenizer::TYPE] !== Mustache_Tokenizer::T_COMMENT) {
list($name, $isDynamic) = $this->getDynamicName($token); if ($this->pragmaDynamicNames && isset($token[Mustache_Tokenizer::NAME])) {
if ($isDynamic) { list($name, $isDynamic) = $this->getDynamicName($token);
$token[Mustache_Tokenizer::NAME] = $name; if ($isDynamic) {
$token[Mustache_Tokenizer::DYNAMIC] = true; $token[Mustache_Tokenizer::NAME] = $name;
$token[Mustache_Tokenizer::DYNAMIC] = true;
}
} }
}
if ($this->pragmaFilters && isset($token[Mustache_Tokenizer::NAME])) { if ($this->pragmaFilters && isset($token[Mustache_Tokenizer::NAME])) {
list($name, $filters) = $this->getNameAndFilters($token[Mustache_Tokenizer::NAME]); list($name, $filters) = $this->getNameAndFilters($token[Mustache_Tokenizer::NAME]);
if (!empty($filters)) { if (!empty($filters)) {
$token[Mustache_Tokenizer::NAME] = $name; $token[Mustache_Tokenizer::NAME] = $name;
$token[Mustache_Tokenizer::FILTERS] = $filters; $token[Mustache_Tokenizer::FILTERS] = $filters;
}
} }
} }