From bd6d661ee7c863a1ca1919fbc7043852ffa55196 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Wed, 27 Sep 2023 20:20:11 +0200 Subject: [PATCH] generateMetadata fix --- .../flash/abc/avm2/parser/script/AVM2SourceGenerator.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java index 94224686c..e397d1f10 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java @@ -2255,7 +2255,7 @@ public class AVM2SourceGenerator implements SourceGenerator { } public int[] generateMetadata(List>> metadata, ABC abc) { - int[] ret = new int[metadata.size()]; + List retList = new ArrayList<>(); for (int i = 0; i < metadata.size(); i++) { Map.Entry> en = metadata.get(i); if ("API".equals(en.getKey()) && abc.isApiVersioned()) { @@ -2270,9 +2270,13 @@ public class AVM2SourceGenerator implements SourceGenerator { j++; } MetadataInfo mi = new MetadataInfo(abcIndex.getSelectedAbc().constants.getStringId(en.getKey(), true), keys, values); - ret[i] = abcIndex.getSelectedAbc().metadata_info.size(); + retList.add(abcIndex.getSelectedAbc().metadata_info.size()); abcIndex.getSelectedAbc().metadata_info.add(mi); } + int[] ret = new int[retList.size()]; + for (int i = 0; i < retList.size(); i++) { + ret[i] = retList.get(i); + } return ret; }