From 5b211cc0121e718199bdccad7e3c86a17d9dfdcc Mon Sep 17 00:00:00 2001 From: "Vladislav.Soroka" Date: Tue, 23 Jan 2018 16:07:18 +0300 Subject: [PATCH] Build view: kotlinc output parser push back unrelated line --- .../build/output/KotlincOutputParser.kt | 24 ++++++------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/java/compiler/impl/src/com/intellij/build/output/KotlincOutputParser.kt b/java/compiler/impl/src/com/intellij/build/output/KotlincOutputParser.kt index c189503f7740..eb5f2efc3566 100644 --- a/java/compiler/impl/src/com/intellij/build/output/KotlincOutputParser.kt +++ b/java/compiler/impl/src/com/intellij/build/output/KotlincOutputParser.kt @@ -6,7 +6,6 @@ import com.intellij.build.events.MessageEvent import com.intellij.build.events.impl.FileMessageEventImpl import com.intellij.build.events.impl.MessageEventImpl import com.intellij.openapi.util.text.StringUtil -import com.intellij.util.SystemProperties import java.io.File import java.lang.IllegalStateException import java.util.function.Consumer @@ -80,25 +79,16 @@ class KotlincOutputParser : BuildOutputParser { var nextLine = reader.readLine() val builder = StringBuilder(this) - while (nextLine != null && nextLine.isNextMessage().not()) { - builder.append("\n").append(nextLine) - nextLine = reader.readLine() - } - - if (nextLine != null) { - // This code is needed for compatibility with AS 2.0 and IDEA 15.0, because of difference in android plugins - val positionField = try { - reader::class.java.getDeclaredField("myPosition") + while (nextLine != null) { + if (nextLine.isNextMessage()) { + reader.pushBack() + break } - catch (e: Throwable) { - null - } - if (positionField != null) { - positionField.isAccessible = true - positionField.setInt(reader, positionField.getInt(reader) - 1) + else { + builder.append("\n").append(nextLine) + nextLine = reader.readLine() } } - return builder.toString() }