From 09e5f061ac93cb61a0184a5e6e5d26f89c8a2d56 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Mon, 29 Jan 2018 10:13:28 +0700 Subject: [PATCH] UnnecessaryTemporaryOnConversionFrom/ToString fix: do not apply when no arguments Fixes EA-115362 - AIOOBE: UnnecessaryTemporaryOnConversionToStringInspection$UnnecessaryTemporaryObjectFix.doFix --- ...ecessaryTemporaryOnConversionFromStringInspection.java | 8 ++++---- ...nnecessaryTemporaryOnConversionToStringInspection.java | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionFromStringInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionFromStringInspection.java index 69d1186b0c83..301a335f2c49 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionFromStringInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionFromStringInspection.java @@ -151,12 +151,12 @@ public class UnnecessaryTemporaryOnConversionFromStringInspection @Override public void doFix(Project project, ProblemDescriptor descriptor) { final PsiMethodCallExpression expression = (PsiMethodCallExpression)descriptor.getPsiElement(); + PsiExpression[] args = expression.getArgumentList().getExpressions(); + if (args.length == 0) return; final String newExpression = calculateReplacementExpression(expression); - if (newExpression == null) { - return; - } + if (newExpression == null) return; CommentTracker commentTracker = new CommentTracker(); - commentTracker.markUnchanged(expression.getArgumentList().getExpressions()[0]); + commentTracker.markUnchanged(args[0]); PsiReplacementUtil.replaceExpression(expression, newExpression, commentTracker); } } diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionToStringInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionToStringInspection.java index 28a590f2c40f..b47437e11280 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionToStringInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/performance/UnnecessaryTemporaryOnConversionToStringInspection.java @@ -122,12 +122,12 @@ public class UnnecessaryTemporaryOnConversionToStringInspection @Override public void doFix(Project project, ProblemDescriptor descriptor) { final PsiMethodCallExpression expression = (PsiMethodCallExpression)descriptor.getPsiElement(); + PsiExpression[] args = expression.getArgumentList().getExpressions(); + if (args.length == 0) return; final String newExpression = calculateReplacementExpression(expression); - if (newExpression == null) { - return; - } + if (newExpression == null) return; CommentTracker commentTracker = new CommentTracker(); - commentTracker.markUnchanged(expression.getArgumentList().getExpressions()[0]); + commentTracker.markUnchanged(args[0]); PsiReplacementUtil.replaceExpression(expression, newExpression, commentTracker); } }