From 7d00106813f1259a41e970a7e0e6b507940614fb Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Fri, 24 May 2019 18:15:10 +0300 Subject: [PATCH] Allow resolve on collecting reference data in copy-paste --- .../idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt b/idea/src/org/jetbrains/kotlin/idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt index 50956531362..b1ac111fd2d 100644 --- a/idea/src/org/jetbrains/kotlin/idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt +++ b/idea/src/org/jetbrains/kotlin/idea/codeInsight/KotlinCopyPasteReferenceProcessor.kt @@ -33,6 +33,7 @@ import org.jetbrains.annotations.TestOnly import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.PackageFragmentDescriptor +import org.jetbrains.kotlin.idea.caches.resolve.allowResolveInWriteAction import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.resolveImportReference import org.jetbrains.kotlin.idea.codeInsight.shorten.performDelayedRefactoringRequests @@ -132,7 +133,10 @@ class KotlinCopyPasteReferenceProcessor : CopyPastePostProcessor() } - val bindingContext = file.getResolutionFacade().analyze(allElementsToResolve, BodyResolveMode.PARTIAL) + val bindingContext = + allowResolveInWriteAction { + file.getResolutionFacade().analyze(allElementsToResolve, BodyResolveMode.PARTIAL) + } val result = ArrayList() for ((range, elements) in elementsByRange) {