InitializerProcessor: disable static and dynamic initializers

This makes it harder for the mapper since it can't look at
initialization order of field initializers. This also causes the
initialization order of fields to be dependent on the order they are in
the class file, which can produce broken code. See IDEA-172187.
This commit is contained in:
Adam
2017-04-30 10:08:12 -04:00
parent 32d7924fe0
commit 9dd59158e1

View File

@@ -38,10 +38,10 @@ public class InitializerProcessor {
MethodWrapper meth = wrapper.getMethodWrapper(CodeConstants.CLINIT_NAME, "()V");
if (meth != null && meth.root != null) { // successfully decompiled static constructor
extractStaticInitializers(wrapper, meth);
//extractStaticInitializers(wrapper, meth);
}
extractDynamicInitializers(wrapper);
//extractDynamicInitializers(wrapper);
// required e.g. if anonymous class is being decompiled as a standard one.
// This can happen if InnerClasses attributes are erased