Add more checkCanceled to PsiFacade.findClass

Relates to #KT-38012
This commit is contained in:
Vladimir Dolzhenko
2020-04-09 15:09:30 +02:00
parent ed56aa3e0d
commit 6fae29bcc0
3 changed files with 6 additions and 0 deletions
@@ -31,6 +31,7 @@ import org.jetbrains.kotlin.asJava.toLightClass
import org.jetbrains.kotlin.load.java.JvmAbi
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.isValidJavaFqName
import org.jetbrains.kotlin.progress.ProgressIndicatorAndCompilationCanceledStatus
import org.jetbrains.kotlin.psi.KtClass
import org.jetbrains.kotlin.psi.KtEnumEntry
import org.jetbrains.kotlin.psi.KtFile
@@ -86,6 +87,7 @@ class JavaElementFinder(
if (qualifiedName.shortName().asString() != JvmAbi.DEFAULT_IMPLS_CLASS_NAME) return
for (classOrObject in kotlinAsJavaSupport.findClassOrObjectDeclarations(qualifiedName.parent(), scope)) {
ProgressIndicatorAndCompilationCanceledStatus.checkCanceled()
//NOTE: can't filter out more interfaces right away because decompiled declarations do not have member bodies
if (classOrObject is KtClass && classOrObject.isInterface()) {
val interfaceClass = classOrObject.toLightClass() ?: continue