From 347c8de080422f2510a0ca7d709eba9578247941 Mon Sep 17 00:00:00 2001 From: Julia Beliaeva Date: Thu, 8 Nov 2018 21:31:36 +0300 Subject: [PATCH] [vcs-log-graph] simplify --- .../com/intellij/vcs/log/graph/utils/BfsUtil.kt | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/platform/vcs-log/graph/src/com/intellij/vcs/log/graph/utils/BfsUtil.kt b/platform/vcs-log/graph/src/com/intellij/vcs/log/graph/utils/BfsUtil.kt index 9d46884a5c11..ee53ebef2b70 100644 --- a/platform/vcs-log/graph/src/com/intellij/vcs/log/graph/utils/BfsUtil.kt +++ b/platform/vcs-log/graph/src/com/intellij/vcs/log/graph/utils/BfsUtil.kt @@ -43,24 +43,18 @@ object BfsUtil { if (candidates.size == 1) return candidates[0] if (candidates.contains(endNode)) return endNode - val bfsWalks = candidates.map { BfsWalk(it, graph, visited) } + val bfsWalks = candidates.mapTo(mutableListOf()) { BfsWalk(it, graph, visited) } - var emptyCount: Int visited.setAll(false) do { - emptyCount = 0 for (walk in bfsWalks) { - if (walk.isFinished()) { - emptyCount++ - } - else { - if (walk.step().contains(endNode)) { - return walk.start - } + if (walk.step().contains(endNode)) { + return walk.start } } + bfsWalks.removeIf { it.isFinished() } } - while (emptyCount < bfsWalks.size) + while (bfsWalks.isNotEmpty()) return candidates[0] }