diff --git a/CHANGELOG.md b/CHANGELOG.md index c08e8159c..c76474bf4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,7 @@ All notable changes to this project will be documented in this file. - [#1884] Memory search - Logged exception when cannot get page range - [#1884] Memory search - Exception on sorting by pid - [#1006] AS3 - Warning - Function value used where type Boolean was expected +- AS3 - Resolving types on static protected namespaced properties ### Changed - Quick search needs minimum of 3 characters 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 8de221710..44c55a14c 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 @@ -171,7 +171,7 @@ public final class AbcIndexing { } int k = abc.constants.getNamespace(propNsIndex).kind; if (k != Namespace.KIND_PACKAGE && propNsIndex != builtInIndex) { - if (k == Namespace.KIND_PROTECTED) { + if (k == Namespace.KIND_PROTECTED || k == Namespace.KIND_STATIC_PROTECTED) { setProtected(abc, propNsIndex); } else { setPrivate(abc, propNsIndex); diff --git a/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.air.swf b/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.air.swf index 274a66e03..cfdf1775b 100644 Binary files a/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.air.swf and b/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.air.swf differ diff --git a/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.flex.swf b/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.flex.swf index 17cb11b24..ef8d15b41 100644 Binary files a/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.flex.swf and b/libsrc/ffdec_lib/testdata/as3_new/bin/as3_new.flex.swf differ diff --git a/libsrc/ffdec_lib/testdata/as3_new/src/tests/TestConvert.as b/libsrc/ffdec_lib/testdata/as3_new/src/tests/TestConvert.as index 22456eb59..62ee1a15e 100644 --- a/libsrc/ffdec_lib/testdata/as3_new/src/tests/TestConvert.as +++ b/libsrc/ffdec_lib/testdata/as3_new/src/tests/TestConvert.as @@ -49,8 +49,11 @@ package tests s = v.join("x"); i = int(v.join("x")); - i = int(prot); - s = prot; + i = prot; + s = String(prot); + + i = sprot; + s = String(sprot); s = String(getTimer()); diff --git a/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestConvertParent.as b/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestConvertParent.as index a340943fb..a3e4f65f9 100644 --- a/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestConvertParent.as +++ b/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestConvertParent.as @@ -3,6 +3,8 @@ package tests_classes public class TestConvertParent { - protected var prot:String = "5"; - } + protected var prot:int = 5; + + protected static var sprot:int = 6; + } } diff --git a/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestModifiers.as b/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestModifiers.as index 8399c968e..c2d26835a 100644 --- a/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestModifiers.as +++ b/libsrc/ffdec_lib/testdata/as3_new/src/tests_classes/TestModifiers.as @@ -8,8 +8,6 @@ package tests_classes internal var attr_inst_internal:int = 3; protected var attr_inst_protected:int = 4; - explicit var attr_exp:int = 9; - private static var attr_stat_private:int = 5; public static var attr_stat_public:int = 6; internal static var attr_stat_internal:int = 7;