From d1eabb3e67bcb0d8a3047f348c2791904fbea7c6 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Tue, 20 Feb 2018 15:08:23 +0300 Subject: [PATCH] Wrap Kotlin exception filter call to read action (EA-116446) See IDEA-186950 for details. --- .../jetbrains/kotlin/idea/filters/KotlinExceptionFilter.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/filters/KotlinExceptionFilter.kt b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/filters/KotlinExceptionFilter.kt index a2b1f5cfb45..2c45066c2b7 100644 --- a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/filters/KotlinExceptionFilter.kt +++ b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/filters/KotlinExceptionFilter.kt @@ -23,6 +23,7 @@ import com.intellij.openapi.vfs.VirtualFile import com.intellij.psi.search.FilenameIndex import com.intellij.psi.search.GlobalSearchScope import org.jetbrains.kotlin.idea.debugger.* +import org.jetbrains.kotlin.idea.util.application.runReadAction import org.jetbrains.kotlin.resolve.jvm.JvmClassName import java.util.* import java.util.regex.Pattern @@ -31,8 +32,10 @@ class KotlinExceptionFilter(private val searchScope: GlobalSearchScope) : Filter private val exceptionFilter = ExceptionFilter(searchScope) override fun applyFilter(line: String, entireLength: Int): Filter.Result? { - val result = exceptionFilter.applyFilter(line, entireLength) - return if (result == null) null else patchResult(result, line) + return runReadAction { + val result = exceptionFilter.applyFilter(line, entireLength) + if (result == null) null else patchResult(result, line) + } } private fun patchResult(result: Filter.Result, line: String): Filter.Result {