From 93d3eab9f918cd4b31165daef2ae3b0b0aedd23a Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Tue, 22 Apr 2014 20:35:55 +0400 Subject: [PATCH] More granular locks in KotlinResolveCache --- .../jet/plugin/caches/resolve/KotlinResolveCache.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/caches/resolve/KotlinResolveCache.kt b/idea/src/org/jetbrains/jet/plugin/caches/resolve/KotlinResolveCache.kt index 8d8c3de90df..d8d6e46dcb7 100644 --- a/idea/src/org/jetbrains/jet/plugin/caches/resolve/KotlinResolveCache.kt +++ b/idea/src/org/jetbrains/jet/plugin/caches/resolve/KotlinResolveCache.kt @@ -264,8 +264,11 @@ private class KotlinResolveCache( }, false) private fun getAnalysisResults(task: Task): AnalyzeExhaust { - return synchronized(analysisResults) { - analysisResults.getValue()!![task] + val slruCache = synchronized(analysisResults) { + analysisResults.getValue()!! + } + return synchronized(slruCache) { + slruCache[task] } }