From 6e0df17a7275725e908c4cc37f2fa1fb788ec6a5 Mon Sep 17 00:00:00 2001 From: Greg Sherwood Date: Wed, 17 Mar 2021 10:04:48 +1100 Subject: [PATCH] Fixed bug #3273 : Squiz.Functions.FunctionDeclarationArgumentSpacing reports line break as 0 spaces between parenthesis --- package.xml | 1 + .../FunctionDeclarationArgumentSpacingSniff.php | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/package.xml b/package.xml index 6ce690bb14..19a04cea13 100644 --- a/package.xml +++ b/package.xml @@ -139,6 +139,7 @@ http://pear.php.net/dtd/package-2.0.xsd"> - Fixed bug #3219 : Generic.Formatting.MultipleStatementAlignment false positive for empty anonymous classes and closures - Fixed bug #3258 : Squiz.Formatting.OperatorBracket duplicate error messages for unary minus -- Thanks to Juliette Reinders Folmer for the patch + - Fixed bug #3273 : Squiz.Functions.FunctionDeclarationArgumentSpacing reports line break as 0 spaces between parenthesis diff --git a/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php b/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php index 2f0d3ab5b7..e696d8001d 100644 --- a/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php +++ b/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php @@ -120,8 +120,14 @@ public function processBracket($phpcsFile, $openBracket) $next = $phpcsFile->findNext(T_WHITESPACE, ($openBracket + 1), $closeBracket, true); if ($next === false) { if (($closeBracket - $openBracket) !== 1) { + if ($tokens[$openBracket]['line'] !== $tokens[$closeBracket]['line']) { + $found = 'newline'; + } else { + $found = $tokens[($openBracket + 1)]['length']; + } + $error = 'Expected 0 spaces between parenthesis of function declaration; %s found'; - $data = [$tokens[($openBracket + 1)]['length']]; + $data = [$found]; $fix = $phpcsFile->addFixableError($error, $openBracket, 'SpacingBetween', $data); if ($fix === true) { $phpcsFile->fixer->replaceToken(($openBracket + 1), ''); @@ -131,7 +137,7 @@ public function processBracket($phpcsFile, $openBracket) // No params, so we don't check normal spacing rules. return; } - } + }//end if foreach ($params as $paramNumber => $param) { if ($param['pass_by_reference'] === true) {