From 797784ff34aabf212f93f869f354ba3e5b0c2a20 Mon Sep 17 00:00:00 2001 From: Fedor Korotkov Date: Mon, 12 Nov 2018 14:20:14 -0500 Subject: [PATCH] [idea-gradle] improved transitive resolution Fixed BFS. We need to either mark dependency nodes as visited after adding them to the queue or double check if a node has been already processed. --- .../idea/configuration/KotlinGradleProjectResolverExtension.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectResolverExtension.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectResolverExtension.kt index 261cc38ec17..7d126915b98 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectResolverExtension.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinGradleProjectResolverExtension.kt @@ -139,6 +139,8 @@ class KotlinGradleProjectResolverExtension : AbstractProjectResolverExtension() while (toProcess.isNotEmpty()) { val moduleNode = toProcess.pollFirst() + if (processed.contains(moduleNode)) continue + processed.add(moduleNode) val moduleNodeForGradleModel = if (useModulePerSourceSet()) {