diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/graph/Graph.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/graph/Graph.java index 391765b70..a7760be0b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/graph/Graph.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/graph/Graph.java @@ -275,8 +275,17 @@ public class Graph { return; } allParts.add(part); - for (GraphPart p : part.nextParts) { - populateParts(p, allParts); + + Queue q = new ArrayDeque<>(); + q.offer(part); + while (!q.isEmpty()) { + part = q.poll(); + for (GraphPart p : part.nextParts) { + if (!allParts.contains(p)) { + allParts.add(p); + q.offer(p); + } + } } }