diff --git a/config/pmd.xml b/config/pmd.xml
index 7efb4ae2e..6fcee6e91 100644
--- a/config/pmd.xml
+++ b/config/pmd.xml
@@ -22,7 +22,10 @@
-
+
+
diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java
index 36f7d0ef1..05589450c 100644
--- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java
+++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java
@@ -154,6 +154,28 @@ public class RightCurlyCheck extends AbstractOptionCheck {
}
final DetailAST lcurly = details.lcurly;
+
+ validate(details, rcurly, lcurly);
+
+ if (!shouldStartLine) {
+ return;
+ }
+ final boolean startsLine =
+ Utils.whitespaceBefore(rcurly.getColumnNo(),
+ getLines()[rcurly.getLineNo() - 1]);
+
+ if (!startsLine && lcurly.getLineNo() != rcurly.getLineNo()) {
+ log(rcurly, MSG_KEY_LINE_NEW, "}");
+ }
+ }
+
+ /**
+ * do general validation
+ * @param details details
+ * @param rcurly right curly token
+ * @param lcurly left curly token
+ */
+ private void validate(Details details, DetailAST rcurly, DetailAST lcurly) {
final DetailAST nextToken = details.nextToken;
final boolean shouldCheckLastRcurly = details.shouldCheckLastRcurly;
@@ -175,17 +197,6 @@ public class RightCurlyCheck extends AbstractOptionCheck {
&& !isEmptyBody(lcurly)) {
log(rcurly, MSG_KEY_LINE_ALONE, "}");
}
-
- if (!shouldStartLine) {
- return;
- }
- final boolean startsLine =
- Utils.whitespaceBefore(rcurly.getColumnNo(),
- getLines()[rcurly.getLineNo() - 1]);
-
- if (!startsLine && lcurly.getLineNo() != rcurly.getLineNo()) {
- log(rcurly, MSG_KEY_LINE_NEW, "}");
- }
}
/**