[Gradle] KotlinNativeTasks: buildDependencies: Add naive dependency loop protection

^KT-57531 Verification Pending
This commit is contained in:
Sebastian Sellmair
2023-03-23 16:03:01 +01:00
committed by Space Team
parent 89df0ed213
commit c45a9d6510
@@ -558,9 +558,11 @@ internal class ExternalDependenciesBuilder(
// Collect plain modules.
val plainModules: MutableMap<KResolvedDependencyId, KResolvedDependency> = mutableMapOf()
val processedDependencies = hashSetOf<ResolvedDependencyResult>()
fun processModule(resolvedDependency: DependencyResult, incomingDependencyId: KResolvedDependencyId) {
if (resolvedDependency !is ResolvedDependencyResult) return
if (resolvedDependency.isConstraint) return
if (!processedDependencies.add(resolvedDependency)) return
val requestedModule = resolvedDependency.requested as? ModuleComponentSelector ?: return
val selectedModule = resolvedDependency.selected