diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/DeleteCatchFix.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/DeleteCatchFix.java index f9b7a1bafa71..5f57680afdc4 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/DeleteCatchFix.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/DeleteCatchFix.java @@ -90,8 +90,9 @@ public class DeleteCatchFix implements IntentionActionWithFixAllOption { boolean mayCompleteNormally = ControlFlowUtils.codeBlockMayCompleteNormally(tryBlock); if (!mayCompleteNormally) { PsiElement nextElement = PsiTreeUtil.skipWhitespacesAndCommentsForward(tryStatement.getNextSibling()); - PsiElement lastElement = PsiTreeUtil.skipWhitespacesAndCommentsBackward(((PsiCodeBlock)tryParent).getRBrace()); - if (nextElement != null && lastElement != null) { + PsiJavaToken rBrace = ((PsiCodeBlock)tryParent).getRBrace(); + PsiElement lastElement = PsiTreeUtil.skipWhitespacesAndCommentsBackward(rBrace); + if (nextElement != null && lastElement != null && nextElement != rBrace) { tryParent.deleteChildRange(nextElement, lastElement); } } diff --git a/java/java-tests/testData/inspection/charsetObjectCanBeUsed/afterStringUUE3.java b/java/java-tests/testData/inspection/charsetObjectCanBeUsed/afterStringUUE3.java new file mode 100644 index 000000000000..f96ee0d387d7 --- /dev/null +++ b/java/java-tests/testData/inspection/charsetObjectCanBeUsed/afterStringUUE3.java @@ -0,0 +1,9 @@ +// "Replace with 'cs'" "true" +import java.nio.charset.*; +import java.io.UnsupportedEncodingException; + +class X { + byte[] convert(String str, Charset cs) { + return str.getBytes(cs); + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/charsetObjectCanBeUsed/beforeStringUUE3.java b/java/java-tests/testData/inspection/charsetObjectCanBeUsed/beforeStringUUE3.java new file mode 100644 index 000000000000..05c9ed866e9a --- /dev/null +++ b/java/java-tests/testData/inspection/charsetObjectCanBeUsed/beforeStringUUE3.java @@ -0,0 +1,13 @@ +// "Replace with 'cs'" "true" +import java.nio.charset.*; +import java.io.UnsupportedEncodingException; + +class X { + byte[] convert(String str, Charset cs) { + try { + return str.getBytes(cs.name()); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + } +} \ No newline at end of file