From 736a60cc18ba06baf50e70a13a42b96ec2df60ae Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Wed, 9 Sep 2015 12:35:27 +0200 Subject: [PATCH] processor passed to searchReferences() can be invoked from multiple threads, so we need synchronization around the results array (EA-72834) --- .../kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.kt b/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.kt index b42d0c59c75..aeaa03556f6 100644 --- a/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/findUsages/handlers/KotlinFindUsagesHandler.kt @@ -71,7 +71,7 @@ public abstract class KotlinFindUsagesHandler(psiElement: T, protected abstract fun searchReferences(element: PsiElement, processor: Processor, options: FindUsagesOptions): Boolean override fun findReferencesToHighlight(target: PsiElement, searchScope: SearchScope): Collection { - val results = ArrayList() + val results = Collections.synchronizedList(arrayListOf()) val options = getFindUsagesOptions().clone() options.searchScope = searchScope searchReferences(target, object : Processor {