From ab07305151d95e8ac50fcec13b86f47b4474666f Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Mon, 10 Jun 2019 22:10:57 +0200 Subject: [PATCH] [java] text blocks: skipping opening whitespaces (IDEA-215312) GitOrigin-RevId: 8561a8ac4a415146a8e971937a99a9900df41401 --- .../codeInsight/daemon/impl/analysis/HighlightUtil.java | 8 ++++---- .../codeInsight/daemon/LightJava13HighlightingTest.kt | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java index 276c6f51bfd5..9bbb3f2bce64 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightUtil.java @@ -1146,15 +1146,15 @@ public class HighlightUtil extends HighlightUtilBase { } else if (type == JavaTokenType.TEXT_BLOCK_LITERAL) { if (value == null) { - if (text.charAt(3) != '\n') { - String message = JavaErrorMessages.message("text.block.new.line"); - return HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR).range(expression).descriptionAndTooltip(message).create(); - } if (!text.endsWith("\"\"\"")) { String message = JavaErrorMessages.message("text.block.unclosed"); int p = expression.getTextRange().getEndOffset(); return HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR).range(p, p).endOfLine().descriptionAndTooltip(message).create(); } + else { + String message = JavaErrorMessages.message("text.block.new.line"); + return HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR).range(expression).descriptionAndTooltip(message).create(); + } } } diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightJava13HighlightingTest.kt b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightJava13HighlightingTest.kt index 27a3d2c9b12b..50118930292a 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightJava13HighlightingTest.kt +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/LightJava13HighlightingTest.kt @@ -11,6 +11,11 @@ class LightJava13HighlightingTest : LightCodeInsightFixtureTestCase() { fun testTextBlocks() = doTest() fun testUnclosedTextBlock() = doTest() + fun testTextBlockOpeningSpaces() { + myFixture.configureByText(getTestName(false) + ".java", "class C {\n String spaces = \"\"\" \t \u000C \n \"\"\";\n}") + myFixture.checkHighlighting() + } + private fun doTest() { myFixture.configureByFile(getTestName(false) + ".java") myFixture.checkHighlighting()