From da086aac5b6743a8f03ea60b044ca17ea34ade9f Mon Sep 17 00:00:00 2001 From: Roman Golyshev Date: Tue, 8 Jul 2025 15:04:28 +0200 Subject: [PATCH] KTIJ-33154 [kotlin] Explicitly call `checkCancelled` before `isAcceptable` in places where this does not already happen GitOrigin-RevId: 4e89b2aac9c9f7fcab41717e90118f235cb4fc34 --- .../api/utils/KtSymbolFromIndexProvider.kt | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/plugins/kotlin/base/analysis-api/analysis-api-utils/src/org/jetbrains/kotlin/idea/base/analysis/api/utils/KtSymbolFromIndexProvider.kt b/plugins/kotlin/base/analysis-api/analysis-api-utils/src/org/jetbrains/kotlin/idea/base/analysis/api/utils/KtSymbolFromIndexProvider.kt index fdbf3f919684..fd318fc76c94 100644 --- a/plugins/kotlin/base/analysis-api/analysis-api-utils/src/org/jetbrains/kotlin/idea/base/analysis/api/utils/KtSymbolFromIndexProvider.kt +++ b/plugins/kotlin/base/analysis-api/analysis-api-utils/src/org/jetbrains/kotlin/idea/base/analysis/api/utils/KtSymbolFromIndexProvider.kt @@ -185,8 +185,10 @@ class KtSymbolFromIndexProvider( return getNonKotlinNamesCaches(useSiteModule.project).flatMap { cache -> cache.getClassesByName(nameString, scope).asSequence() - }.filter { it.isAcceptable(psiFilter) } - .mapNotNull { it.namedClassSymbol } + }.filter { + ProgressManager.checkCanceled() + it.isAcceptable(psiFilter) + }.mapNotNull { it.namedClassSymbol } } context(KaSession) @@ -264,8 +266,10 @@ class KtSymbolFromIndexProvider( psiFilter: (PsiMethod) -> Boolean = { true }, ): Sequence = getNonKotlinNamesCaches(useSiteModule.project).flatMap { it.getMethodsByName(name.asString(), scope).asSequence() - }.filter { it.isAcceptable(psiFilter) } - .mapNotNull { it.callableSymbol } + }.filter { + ProgressManager.checkCanceled() + it.isAcceptable(psiFilter) + }.mapNotNull { it.callableSymbol } context(KaSession) fun getJavaFieldsByName( @@ -274,8 +278,10 @@ class KtSymbolFromIndexProvider( psiFilter: (PsiField) -> Boolean = { true }, ): Sequence = getNonKotlinNamesCaches(useSiteModule.project).flatMap { it.getFieldsByName(name.asString(), scope).asSequence() - }.filter { it.isAcceptable(psiFilter) } - .mapNotNull { it.callableSymbol } + }.filter { + ProgressManager.checkCanceled() + it.isAcceptable(psiFilter) + }.mapNotNull { it.callableSymbol } /** * Returns top-level callables, excluding extensions. To obtain extensions use [getExtensionCallableSymbolsByNameFilter].