mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
unused return value fix should replace return-statements in write action
This commit is contained in:
+10
-7
@@ -20,6 +20,7 @@ import com.intellij.codeInsight.daemon.GroupNames;
|
||||
import com.intellij.codeInspection.*;
|
||||
import com.intellij.codeInspection.reference.*;
|
||||
import com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel;
|
||||
import com.intellij.openapi.application.WriteAction;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.WriteExternalException;
|
||||
@@ -214,13 +215,15 @@ public class UnusedReturnValue extends GlobalJavaBatchInspectionTool{
|
||||
try {
|
||||
final PsiExpression expression = returnStatement.getReturnValue();
|
||||
if (expression instanceof PsiLiteralExpression || expression instanceof PsiThisExpression) { //avoid side effects
|
||||
if (returnStatement == lastStatement) {
|
||||
returnStatement.delete();
|
||||
}
|
||||
else {
|
||||
returnStatement
|
||||
.replace(JavaPsiFacade.getInstance(method.getProject()).getElementFactory().createStatementFromText("return;", returnStatement));
|
||||
}
|
||||
WriteAction.run(() -> {
|
||||
if (returnStatement == lastStatement) {
|
||||
returnStatement.delete();
|
||||
}
|
||||
else {
|
||||
returnStatement
|
||||
.replace(JavaPsiFacade.getInstance(method.getProject()).getElementFactory().createStatementFromText("return;", returnStatement));
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
catch (IncorrectOperationException e) {
|
||||
|
||||
Reference in New Issue
Block a user