core: ClassNode: Check is field really static or not in loadStaticValues()
Fixes appearing of the 0/null/false initializers for instance final fields.
This commit is contained in:
@@ -171,7 +171,9 @@ public class ClassNode extends LineAttrNode implements ILoadable, ICodeNode {
|
||||
|
||||
private void loadStaticValues(ClassDef cls, List<FieldNode> staticFields) throws DecodeException {
|
||||
for (FieldNode f : staticFields) {
|
||||
if (f.getAccessFlags().isFinal()) {
|
||||
AccessInfo flags = f.getAccessFlags();
|
||||
if (flags.isStatic() && flags.isFinal()) {
|
||||
LOG.debug("loadStaticValues(): Adding NULL initializer to static final field {}", f.getAlias());
|
||||
f.addAttr(FieldInitAttr.NULL_VALUE);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user