diff --git a/CHANGELOG.md b/CHANGELOG.md index bef58e06d..f57f16679 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,7 @@ All notable changes to this project will be documented in this file. - ShapeImporter fillstyles shapenum - Reload button disabled after saving new file - PlaceObject tag - do not display export name twice +- Loading nested characters when Importassets tag used ### Changed - Quick search needs minimum of 3 characters 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 326ed0569..d9561f36f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java @@ -1531,21 +1531,30 @@ public final class SWF implements SWFContainerItem, Timelined, Openable { } int pos = 0; + Set importedTagPos = new HashSet<>(); + List importedCharacters = new ArrayList<>(); for (String key : importedMap2.keySet()) { if (!exportedMap2.containsKey(key)) { continue; //? } int exportedId = exportedMap2.get(key); int importedId = importedMap2.get(key); + int ip = 0; for (Tag cht : iSwf.tags) { if ((cht instanceof CharacterIdTag) && (((CharacterIdTag) cht).getCharacterId() == exportedId) && !(cht instanceof PlaceObjectTypeTag) && !(cht instanceof RemoveTag)) { CharacterIdTag ch = (CharacterIdTag) cht; - cht.setSwf(this); ch.setCharacterId(importedId); - cht.setImported(true); + setImportedDeep(cht, false); tags.add(p + 1 + pos, cht); - pos++; + importedTagPos.add(ip); + if (cht instanceof CharacterTag) { + importedCharacters.add((CharacterTag)cht); + } else { + cht.setSwf(this); + } + pos++; } + ip++; } } @@ -1554,23 +1563,85 @@ public final class SWF implements SWFContainerItem, Timelined, Openable { for (String key : classesMap2.keySet()) { int exportedId = classesMap2.get(key); int importedId = newId++; + int ip = 0; for (Tag cht : iSwf.tags) { - if ((cht instanceof CharacterIdTag) && (((CharacterIdTag) cht).getCharacterId() == exportedId) && !(cht instanceof PlaceObjectTypeTag) && !(cht instanceof RemoveTag)) { + if (!importedTagPos.contains(ip) && (cht instanceof CharacterIdTag) && (((CharacterIdTag) cht).getCharacterId() == exportedId) && !(cht instanceof PlaceObjectTypeTag) && !(cht instanceof RemoveTag)) { CharacterIdTag ch = (CharacterIdTag) cht; - cht.setSwf(this); + ch.setCharacterId(importedId); - cht.setImported(true); + setImportedDeep(cht, false); tags.add(p + 1 + pos, cht); + if (cht instanceof CharacterTag) { + importedCharacters.add((CharacterTag)cht); + } else { + cht.setSwf(this); + } pos++; } + ip++; } } - updateCharacters(); + + pos = 0; + for (CharacterTag ich:importedCharacters) { + Set needed = new LinkedHashSet<>(); + ich.getNeededCharactersDeep(needed); + Map replaceCharactersMap = new HashMap<>(); + for (int n:needed) { + CharacterTag cht = iSwf.getCharacter(n); + if (cht.getSwf() != iSwf) { + continue; //already imported + } + int importedId = newId++; + cht.setSwf(this); + replaceCharactersMap.put(n, importedId); + cht.setCharacterId(importedId); + setImportedDeep(cht, true); + tags.add(p + 1 + pos, cht); + pos++; + } + + Map replaceCharactersMap2 = new HashMap<>(); + + //first map to non existing ids + int iNewId = iSwf.getNextCharacterId(); + for (int from:replaceCharactersMap.keySet()) { + int to = iNewId++; + replaceCharactersMap2.put(to, replaceCharactersMap.get(from)); + ich.replaceCharacter(from, to); + } + + for (int from:replaceCharactersMap2.keySet()) { + int to = replaceCharactersMap2.get(from); + ich.replaceCharacter(from, to); + } + ich.setModified(false); + setSwfDeep(ich); + } + updateCharacters(); } } } } + private void setSwfDeep(Tag t) { + t.setSwf(this); + if (t instanceof DefineSpriteTag) { + for(Tag st: ((DefineSpriteTag)t).getTags()) { + setSwfDeep(st); + } + } + } + + private void setImportedDeep(Tag t, boolean deep) { + t.setImported(true, deep); + if (t instanceof DefineSpriteTag) { + for(Tag st: ((DefineSpriteTag)t).getTags()) { + setImportedDeep(st, true); + } + } + } + @Override public SWF getOpenable() { return this; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/Tag.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/Tag.java index 6bde9d89c..58ddbbddd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/Tag.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/tags/Tag.java @@ -93,14 +93,22 @@ public abstract class Tag implements NeedsCharacters, Exportable, Serializable { @Internal protected boolean imported = false; + + @Internal + protected boolean importedDeep = false; - public void setImported(boolean imported) { + public void setImported(boolean imported, boolean deep) { this.imported = imported; + this.importedDeep = deep; } public boolean isImported() { return imported; } + + public boolean isImportedDeep() { + return importedDeep; + } /** * Original tag data diff --git a/libsrc/ffdec_lib/testdata/importing/import.html b/libsrc/ffdec_lib/testdata/importing/import.html new file mode 100644 index 000000000..6e12eea4f --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import.html @@ -0,0 +1,49 @@ + + + + import + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Adobe Flash player + + + + + +
+ + diff --git a/libsrc/ffdec_lib/testdata/importing/import.swf b/libsrc/ffdec_lib/testdata/importing/import.swf new file mode 100644 index 000000000..29093a20d Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/import.swf differ diff --git a/libsrc/ffdec_lib/testdata/importing/import/DOMDocument.xml b/libsrc/ffdec_lib/testdata/importing/import/DOMDocument.xml new file mode 100644 index 000000000..4469446c1 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import/DOMDocument.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import/LIBRARY/RedRect.xml b/libsrc/ffdec_lib/testdata/importing/import/LIBRARY/RedRect.xml new file mode 100644 index 000000000..a30549f47 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import/LIBRARY/RedRect.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import/META-INF/metadata.xml b/libsrc/ffdec_lib/testdata/importing/import/META-INF/metadata.xml new file mode 100644 index 000000000..a31cae0b2 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import/META-INF/metadata.xml @@ -0,0 +1,55 @@ + + + + + Adobe Flash Professional CS6 - build 481 + 2022-12-10T01:33:37-08:00 + 2022-12-10T01:34-08:00 + 2022-12-10T01:34-08:00 + + + application/vnd.adobe.fla + + + xmp.iid:4243EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4243EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4243EEC66D78ED11A6ED8D01DE5D1F68 + + + + created + xmp.iid:4243EEC66D78ED11A6ED8D01DE5D1F68 + 2022-12-10T01:33:37-08:00 + Adobe Flash Professional CS6 - build 481 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import/MobileSettings.xml b/libsrc/ffdec_lib/testdata/importing/import/MobileSettings.xml new file mode 100644 index 000000000..e69de29bb diff --git a/libsrc/ffdec_lib/testdata/importing/import/PublishSettings.xml b/libsrc/ffdec_lib/testdata/importing/import/PublishSettings.xml new file mode 100644 index 000000000..80beb4fe0 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import/PublishSettings.xml @@ -0,0 +1,206 @@ + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + import.swf + import.exe + import.app + import.html + import.gif + import.jpg + import.png + import.mov + import.smil + import.swc + + + 0 + 12,0,0,0;11,2,0,0;11,1,0,0;10,3,0,0;10,2,153,0;10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1; + 1 + 1 + import.xfl_content.html + import.xfl_alternate.html + 0 + + 550 + 400 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 4 + 0 + 0 + 1 + 0 + C:\Users\MyUser\AppData\Local\Adobe\Flash CS6\en_US\Configuration\HTML\Default.html + 1 + + + + + 0 + 0 + 0 + 80 + 0 + 0 + 7 + 0 + 7 + 0 + 15 + FlashPlayer11.2 + 3 + 1 + + . + CONFIG::FLASH_AUTHORING="true"; + 0 + + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + 2 + 4 + 4096 + AS3 + 1 + 1 + 0 + 15 + 1 + 0 + 4102 + rsl + wrap + $(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf + + + $(AppConfig)/ActionScript 3.0/libs + merge + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + rsl + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + 550 + 400 + 0 + 4718592 + 0 + 80 + 1 + + + 1 + 0 + 1 + 0 + 0 + 100000 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + + + 550 + 400 + 0 + 1 + 1 + + 1 + 0 + 1 + 0 + 0 + + 128 + + + 255 + + + + 550 + 400 + 1 + 0 + 0 + 1 + 0 + 0 + 1 + + + + 24-bit with Alpha + 255 + + + + 550 + 400 + 1 + 0 + + + 00000000 + 0 + 0 + 0 + 0 + 1 + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import/bin/SymDepend.cache b/libsrc/ffdec_lib/testdata/importing/import/bin/SymDepend.cache new file mode 100644 index 000000000..adb339018 Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/import/bin/SymDepend.cache differ diff --git a/libsrc/ffdec_lib/testdata/importing/import/import.xfl b/libsrc/ffdec_lib/testdata/importing/import/import.xfl new file mode 100644 index 000000000..860a820ec --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import/import.xfl @@ -0,0 +1 @@ +PROXY-CS5 \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2.html b/libsrc/ffdec_lib/testdata/importing/import_as2.html new file mode 100644 index 000000000..43b4236d7 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2.html @@ -0,0 +1,49 @@ + + + + import_as2 + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Adobe Flash player + + + + + +
+ + diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2.swf b/libsrc/ffdec_lib/testdata/importing/import_as2.swf new file mode 100644 index 000000000..cfd96b72c Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/import_as2.swf differ diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/DOMDocument.xml b/libsrc/ffdec_lib/testdata/importing/import_as2/DOMDocument.xml new file mode 100644 index 000000000..2c684ec87 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2/DOMDocument.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/LIBRARY/RedRect.xml b/libsrc/ffdec_lib/testdata/importing/import_as2/LIBRARY/RedRect.xml new file mode 100644 index 000000000..e245cab60 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2/LIBRARY/RedRect.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/META-INF/metadata.xml b/libsrc/ffdec_lib/testdata/importing/import_as2/META-INF/metadata.xml new file mode 100644 index 000000000..a776329f2 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2/META-INF/metadata.xml @@ -0,0 +1,55 @@ + + + + + Adobe Flash Professional CS6 - build 481 + 2022-12-10T01:41:57-08:00 + 2022-12-10T01:42:10-08:00 + 2022-12-10T01:42:10-08:00 + + + application/vnd.adobe.fla + + + xmp.iid:4643EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4643EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4643EEC66D78ED11A6ED8D01DE5D1F68 + + + + created + xmp.iid:4643EEC66D78ED11A6ED8D01DE5D1F68 + 2022-12-10T01:41:57-08:00 + Adobe Flash Professional CS6 - build 481 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/MobileSettings.xml b/libsrc/ffdec_lib/testdata/importing/import_as2/MobileSettings.xml new file mode 100644 index 000000000..e69de29bb diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/PublishSettings.xml b/libsrc/ffdec_lib/testdata/importing/import_as2/PublishSettings.xml new file mode 100644 index 000000000..de0ea66ef --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2/PublishSettings.xml @@ -0,0 +1,206 @@ + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + import_as2.swf + import_as2.exe + import_as2.app + import_as2.html + import_as2.gif + import_as2.jpg + import_as2.png + import_as2.mov + import_as2.smil + import_as2.swc + + + 0 + 12,0,0,0;11,2,0,0;11,1,0,0;10,3,0,0;10,2,153,0;10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1; + 1 + 1 + import_as2.xfl_content.html + import_as2.xfl_alternate.html + 0 + + 550 + 400 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 4 + 0 + 0 + 1 + 0 + C:\Users\MyUser\AppData\Local\Adobe\Flash CS6\en_US\Configuration\HTML\Default.html + 1 + + + + + 0 + 0 + 0 + 80 + 0 + 0 + 7 + 0 + 7 + 0 + 15 + FlashPlayer11.2 + 2 + 1 + + . + CONFIG::FLASH_AUTHORING="true"; + 0 + + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + 2 + 4 + 4096 + AS3 + 1 + 1 + 0 + 15 + 1 + 0 + 4102 + rsl + wrap + $(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf + + + $(AppConfig)/ActionScript 3.0/libs + merge + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + rsl + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + 550 + 400 + 0 + 4718592 + 0 + 80 + 1 + + + 1 + 0 + 1 + 0 + 0 + 100000 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + + + 550 + 400 + 0 + 1 + 1 + + 1 + 0 + 1 + 0 + 0 + + 128 + + + 255 + + + + 550 + 400 + 1 + 0 + 0 + 1 + 0 + 0 + 1 + + + + 24-bit with Alpha + 255 + + + + 550 + 400 + 1 + 0 + + + 00000000 + 0 + 0 + 0 + 0 + 1 + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/bin/SymDepend.cache b/libsrc/ffdec_lib/testdata/importing/import_as2/bin/SymDepend.cache new file mode 100644 index 000000000..0a001d239 Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/import_as2/bin/SymDepend.cache differ diff --git a/libsrc/ffdec_lib/testdata/importing/import_as2/import_as2.xfl b/libsrc/ffdec_lib/testdata/importing/import_as2/import_as2.xfl new file mode 100644 index 000000000..860a820ec --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/import_as2/import_as2.xfl @@ -0,0 +1 @@ +PROXY-CS5 \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported.html b/libsrc/ffdec_lib/testdata/importing/imported.html new file mode 100644 index 000000000..01ff7c5f2 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported.html @@ -0,0 +1,49 @@ + + + + imported + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Adobe Flash player + + + + + +
+ + diff --git a/libsrc/ffdec_lib/testdata/importing/imported.swf b/libsrc/ffdec_lib/testdata/importing/imported.swf new file mode 100644 index 000000000..73818673e Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/imported.swf differ diff --git a/libsrc/ffdec_lib/testdata/importing/imported/DOMDocument.xml b/libsrc/ffdec_lib/testdata/importing/imported/DOMDocument.xml new file mode 100644 index 000000000..9ea982bd1 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/DOMDocument.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/NotImported.xml b/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/NotImported.xml new file mode 100644 index 000000000..590b1db44 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/NotImported.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/RedRect.xml b/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/RedRect.xml new file mode 100644 index 000000000..d38af433c --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/LIBRARY/RedRect.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported/META-INF/metadata.xml b/libsrc/ffdec_lib/testdata/importing/imported/META-INF/metadata.xml new file mode 100644 index 000000000..7015a764c --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/META-INF/metadata.xml @@ -0,0 +1,61 @@ + + + + + Adobe Flash Professional CS6 - build 481 + 2022-12-10T01:34:04-08:00 + 2022-12-10T02:08:31-08:00 + 2022-12-10T02:08:31-08:00 + + + application/vnd.adobe.fla + + + xmp.iid:4A43EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4343EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4343EEC66D78ED11A6ED8D01DE5D1F68 + + + + created + xmp.iid:4343EEC66D78ED11A6ED8D01DE5D1F68 + 2022-12-10T01:34:04-08:00 + Adobe Flash Professional CS6 - build 481 + + + created + xmp.iid:4A43EEC66D78ED11A6ED8D01DE5D1F68 + 2022-12-10T01:34:04-08:00 + Adobe Flash Professional CS6 - build 481 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported/MobileSettings.xml b/libsrc/ffdec_lib/testdata/importing/imported/MobileSettings.xml new file mode 100644 index 000000000..e69de29bb diff --git a/libsrc/ffdec_lib/testdata/importing/imported/PublishSettings.xml b/libsrc/ffdec_lib/testdata/importing/imported/PublishSettings.xml new file mode 100644 index 000000000..891056ddf --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/PublishSettings.xml @@ -0,0 +1,206 @@ + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + imported.swf + imported.exe + imported.app + imported.html + imported.gif + imported.jpg + imported.png + imported.mov + imported.smil + imported.swc + + + 0 + 12,0,0,0;11,2,0,0;11,1,0,0;10,3,0,0;10,2,153,0;10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1; + 1 + 1 + imported.xfl_content.html + imported.xfl_alternate.html + 0 + + 550 + 400 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 4 + 0 + 0 + 1 + 0 + C:\Users\MyUser\AppData\Local\Adobe\Flash CS6\en_US\Configuration\HTML\Default.html + 1 + + + + + 0 + 0 + 0 + 80 + 0 + 0 + 7 + 0 + 7 + 0 + 15 + FlashPlayer11.2 + 3 + 1 + + . + CONFIG::FLASH_AUTHORING="true"; + 0 + + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + 2 + 4 + 4096 + AS3 + 1 + 1 + 0 + 15 + 1 + 0 + 4102 + rsl + wrap + $(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf + + + $(AppConfig)/ActionScript 3.0/libs + merge + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + rsl + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + 550 + 400 + 0 + 4718592 + 0 + 80 + 1 + + + 1 + 0 + 1 + 0 + 0 + 100000 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + + + 550 + 400 + 0 + 1 + 1 + + 1 + 0 + 1 + 0 + 0 + + 128 + + + 255 + + + + 550 + 400 + 1 + 0 + 0 + 1 + 0 + 0 + 1 + + + + 24-bit with Alpha + 255 + + + + 550 + 400 + 1 + 0 + + + 00000000 + 0 + 0 + 0 + 0 + 1 + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported/bin/SymDepend.cache b/libsrc/ffdec_lib/testdata/importing/imported/bin/SymDepend.cache new file mode 100644 index 000000000..12d0be33d Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/imported/bin/SymDepend.cache differ diff --git a/libsrc/ffdec_lib/testdata/importing/imported/imported.xfl b/libsrc/ffdec_lib/testdata/importing/imported/imported.xfl new file mode 100644 index 000000000..860a820ec --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported/imported.xfl @@ -0,0 +1 @@ +PROXY-CS5 \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2.html b/libsrc/ffdec_lib/testdata/importing/imported_as2.html new file mode 100644 index 000000000..3161511a6 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2.html @@ -0,0 +1,49 @@ + + + + imported_as2 + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Adobe Flash player + + + + + +
+ + diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2.swf b/libsrc/ffdec_lib/testdata/importing/imported_as2.swf new file mode 100644 index 000000000..2a11f3f7c Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/imported_as2.swf differ diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/DOMDocument.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/DOMDocument.xml new file mode 100644 index 000000000..40928e3f6 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/DOMDocument.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/NotImported.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/NotImported.xml new file mode 100644 index 000000000..590b1db44 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/NotImported.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/RedRect.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/RedRect.xml new file mode 100644 index 000000000..ce18abcac --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/LIBRARY/RedRect.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/META-INF/metadata.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/META-INF/metadata.xml new file mode 100644 index 000000000..df5e354fd --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/META-INF/metadata.xml @@ -0,0 +1,55 @@ + + + + + Adobe Flash Professional CS6 - build 481 + 2022-12-10T01:42:15-08:00 + 2022-12-10T01:42:25-08:00 + 2022-12-10T01:42:25-08:00 + + + application/vnd.adobe.fla + + + xmp.iid:4743EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4743EEC66D78ED11A6ED8D01DE5D1F68 + xmp.did:4743EEC66D78ED11A6ED8D01DE5D1F68 + + + + created + xmp.iid:4743EEC66D78ED11A6ED8D01DE5D1F68 + 2022-12-10T01:42:15-08:00 + Adobe Flash Professional CS6 - build 481 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/MobileSettings.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/MobileSettings.xml new file mode 100644 index 000000000..e69de29bb diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/PublishSettings.xml b/libsrc/ffdec_lib/testdata/importing/imported_as2/PublishSettings.xml new file mode 100644 index 000000000..857e54e38 --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/PublishSettings.xml @@ -0,0 +1,206 @@ + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + imported_as2.swf + imported_as2.exe + imported_as2.app + imported_as2.html + imported_as2.gif + imported_as2.jpg + imported_as2.png + imported_as2.mov + imported_as2.smil + imported_as2.swc + + + 0 + 12,0,0,0;11,2,0,0;11,1,0,0;10,3,0,0;10,2,153,0;10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1; + 1 + 1 + imported_as2.xfl_content.html + imported_as2.xfl_alternate.html + 0 + + 550 + 400 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 4 + 0 + 0 + 1 + 0 + C:\Users\MyUser\AppData\Local\Adobe\Flash CS6\en_US\Configuration\HTML\Default.html + 1 + + + + + 0 + 0 + 0 + 80 + 0 + 0 + 7 + 0 + 7 + 0 + 15 + FlashPlayer11.2 + 2 + 1 + + . + CONFIG::FLASH_AUTHORING="true"; + 0 + + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + 2 + 4 + 4096 + AS3 + 1 + 1 + 0 + 15 + 1 + 0 + 4102 + rsl + wrap + $(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf + + + $(AppConfig)/ActionScript 3.0/libs + merge + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + rsl + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + 550 + 400 + 0 + 4718592 + 0 + 80 + 1 + + + 1 + 0 + 1 + 0 + 0 + 100000 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + + + 550 + 400 + 0 + 1 + 1 + + 1 + 0 + 1 + 0 + 0 + + 128 + + + 255 + + + + 550 + 400 + 1 + 0 + 0 + 1 + 0 + 0 + 1 + + + + 24-bit with Alpha + 255 + + + + 550 + 400 + 1 + 0 + + + 00000000 + 0 + 0 + 0 + 0 + 1 + + + \ No newline at end of file diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/bin/SymDepend.cache b/libsrc/ffdec_lib/testdata/importing/imported_as2/bin/SymDepend.cache new file mode 100644 index 000000000..ce9aa79df Binary files /dev/null and b/libsrc/ffdec_lib/testdata/importing/imported_as2/bin/SymDepend.cache differ diff --git a/libsrc/ffdec_lib/testdata/importing/imported_as2/imported_as2.xfl b/libsrc/ffdec_lib/testdata/importing/imported_as2/imported_as2.xfl new file mode 100644 index 000000000..860a820ec --- /dev/null +++ b/libsrc/ffdec_lib/testdata/importing/imported_as2/imported_as2.xfl @@ -0,0 +1 @@ +PROXY-CS5 \ No newline at end of file