diff --git a/Magento2/Sniffs/Security/XssTemplateSniff.php b/Magento2/Sniffs/Security/XssTemplateSniff.php index 3f89ac0b..330999e9 100644 --- a/Magento2/Sniffs/Security/XssTemplateSniff.php +++ b/Magento2/Sniffs/Security/XssTemplateSniff.php @@ -151,6 +151,10 @@ private function findSpecialAnnotation($stackPtr) $startOfStatement = $this->file->findPrevious(T_OPEN_TAG, $stackPtr); return $this->file->findPrevious(T_COMMENT, $stackPtr, $startOfStatement); } + if ($this->tokens[$stackPtr]['code'] === T_OPEN_TAG_WITH_ECHO) { + $endOfStatement = $this->file->findNext(T_CLOSE_TAG, $stackPtr); + return $this->file->findNext(T_COMMENT, $stackPtr, $endOfStatement); + } return false; } diff --git a/Magento2/Tests/Security/XssTemplateUnitTest.inc b/Magento2/Tests/Security/XssTemplateUnitTest.inc index 95214531..eefb2c70 100644 --- a/Magento2/Tests/Security/XssTemplateUnitTest.inc +++ b/Magento2/Tests/Security/XssTemplateUnitTest.inc @@ -1,5 +1,5 @@ - + getSomeData(); echo $block->getSomeData(); /* @escapeNotVerified */ echo $block->getSomeData();?> getTitle();?> getSomeMethod($block->getHtmlId());?> @@ -56,3 +56,4 @@ echo $var; escapeJs($js); ?> escapeCss($css); ?> getJsLayout($jsLayout); ?> + diff --git a/Magento2/ruleset.xml b/Magento2/ruleset.xml index be5d59c1..6cf09ab7 100644 --- a/Magento2/ruleset.xml +++ b/Magento2/ruleset.xml @@ -60,6 +60,7 @@ 10 error */lib/* + */Test/* 10 @@ -97,6 +98,7 @@ 9 warning */lib/* + */Test/* *.phtml @@ -252,6 +254,7 @@ 7 warning + */Test/* 7