diff --git a/idea/src/org/jetbrains/kotlin/idea/search/ideaExtensions/KotlinDefinitionsSearcher.kt b/idea/src/org/jetbrains/kotlin/idea/search/ideaExtensions/KotlinDefinitionsSearcher.kt index faf91812677..5beb01b7b23 100644 --- a/idea/src/org/jetbrains/kotlin/idea/search/ideaExtensions/KotlinDefinitionsSearcher.kt +++ b/idea/src/org/jetbrains/kotlin/idea/search/ideaExtensions/KotlinDefinitionsSearcher.kt @@ -123,7 +123,10 @@ class KotlinDefinitionsSearcher : QueryExecutor ): Boolean { // workaround for IDEA optimization that uses Java PSI traversal to locate inheritors in local search scope - val virtualFiles = searchScope.scope.mapTo(HashSet()) { it.containingFile.virtualFile } + val virtualFiles = runReadAction { + searchScope.scope.mapTo(HashSet()) { it.containingFile.virtualFile } + } + val globalScope = GlobalSearchScope.filesScope(psiClass.project, virtualFiles) return ContainerUtil.process(ClassInheritorsSearch.search(psiClass, globalScope, true)) { candidate -> val candidateOrigin = candidate.unwrapped ?: candidate