From 5876fc445b73645f72a11464556eadb4e40350a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Sun, 30 Oct 2022 11:22:15 +0100 Subject: [PATCH] Fixed concurrent modification exception on exit --- libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java index c18b092ca..d35da297c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java @@ -191,6 +191,7 @@ import java.util.Date; import java.util.EmptyStackException; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.List; @@ -852,7 +853,9 @@ public final class SWF implements SWFContainerItem, Timelined { } private void parseCharacters(Iterable list, Map characters, Map> characterIdTags) { - for (Tag t : list) { + Iterator iterator = list.iterator(); + while (iterator.hasNext()) { + Tag t = iterator.next(); if (t instanceof CharacterIdTag) { int characterId = ((CharacterIdTag) t).getCharacterId(); if (t instanceof CharacterTag) {