aboutsummaryrefslogtreecommitdiffstats
path: root/build/code_sniffer/phpbb/Sniffs/Namespaces
diff options
context:
space:
mode:
authorNicofuma <github@nicofuma.fr>2015-05-10 21:11:00 +0200
committerNicofuma <github@nicofuma.fr>2015-05-10 21:13:36 +0200
commit084aa567772e9d56012e1fd251478f75c6cd5a3b (patch)
treea4a3bd6216074ea07ae63c6266d17abfacaf1dd4 /build/code_sniffer/phpbb/Sniffs/Namespaces
parentb3b7f8e925a2af91d578ad4453070cefc02e7a3d (diff)
downloadforums-084aa567772e9d56012e1fd251478f75c6cd5a3b.tar
forums-084aa567772e9d56012e1fd251478f75c6cd5a3b.tar.gz
forums-084aa567772e9d56012e1fd251478f75c6cd5a3b.tar.bz2
forums-084aa567772e9d56012e1fd251478f75c6cd5a3b.tar.xz
forums-084aa567772e9d56012e1fd251478f75c6cd5a3b.zip
[ticket/13830] Check class used in catch statements
PHPBB3-13830
Diffstat (limited to 'build/code_sniffer/phpbb/Sniffs/Namespaces')
-rw-r--r--build/code_sniffer/phpbb/Sniffs/Namespaces/UnusedUseSniff.php14
1 files changed, 14 insertions, 0 deletions
diff --git a/build/code_sniffer/phpbb/Sniffs/Namespaces/UnusedUseSniff.php b/build/code_sniffer/phpbb/Sniffs/Namespaces/UnusedUseSniff.php
index 18cb8ba82e..9f68ee1341 100644
--- a/build/code_sniffer/phpbb/Sniffs/Namespaces/UnusedUseSniff.php
+++ b/build/code_sniffer/phpbb/Sniffs/Namespaces/UnusedUseSniff.php
@@ -195,6 +195,20 @@ class phpbb_Sniffs_Namespaces_UnusedUseSniff implements PHP_CodeSniffer_Sniff
}
}
+ // Checks in catch blocks
+ $old_catch = $stackPtr;
+ while (($catch = $phpcsFile->findNext(T_CATCH, ($old_catch + 1))) !== false)
+ {
+ $old_catch = $catch;
+
+ $caught_class_name_start = $phpcsFile->findNext(array(T_NS_SEPARATOR, T_STRING), $catch + 1);
+ $caught_class_name_end = $phpcsFile->findNext($find, $caught_class_name_start, null, true);
+
+ $caught_class_name = trim($phpcsFile->getTokensAsString($caught_class_name_start, ($caught_class_name_end - $caught_class_name_start)));
+
+ $ok = $this->check($phpcsFile, $caught_class_name, $class_name_full, $class_name_short, $catch) ? true : $ok;
+ }
+
if (!$ok)
{
$error = 'There must not be unused USE statements.';