diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ce15bdc8..977ad7149 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,8 @@ All notable changes to this project will be documented in this file. - Improper standalone layer termination, not cleaning temp files - [#2636] ActionScript - Incorrect always-break detection causing insertion of while(true) - ActionScript - newline after do..while -- StackOverflow on cyclic buttons +- StackOverflow on cyclic characters +- ConcurrentModification in abc indexing ## [25.0.0] - 2026-02-10 ### Added diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java index b636b96e2..315f1d28a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java @@ -581,7 +581,7 @@ public final class AbcIndexing { /** * Rebuilds package to objects name map. */ - public void rebuildPkgToObjectsNameMap() { + public synchronized void rebuildPkgToObjectsNameMap() { pkgToObjectsName.clear(); Set cs = new LinkedHashSet<>(classes.keySet()); for (ClassDef cd : cs) { @@ -1119,7 +1119,7 @@ public final class AbcIndexing { * * @param abc ABC to add */ - public void addAbc(ABC abc) { + public synchronized void addAbc(ABC abc) { if (abc == null) { return; }