diff --git a/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java b/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java index a5a9cdc0d..62bb5529a 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java @@ -172,7 +172,7 @@ public class InsnGen { private void instanceField(ICodeWriter code, FieldInfo field, InsnArg arg) throws CodegenException { ClassNode pCls = mth.getParentClass(); - FieldNode fieldNode = pCls.root().deepResolveField(field); + FieldNode fieldNode = pCls.root().resolveField(field); if (fieldNode != null) { FieldReplaceAttr replace = fieldNode.get(AType.FIELD_REPLACE); if (replace != null) { @@ -210,7 +210,7 @@ public class InsnGen { } code.add('.'); } - FieldNode fieldNode = clsGen.getClassNode().root().deepResolveField(field); + FieldNode fieldNode = clsGen.getClassNode().root().resolveField(field); if (fieldNode != null) { code.attachAnnotation(fieldNode); } @@ -764,7 +764,7 @@ public class InsnGen { return; } MethodInfo callMth = insn.getCallMth(); - MethodNode callMthNode = mth.root().deepResolveMethod(callMth); + MethodNode callMthNode = mth.root().resolveMethod(callMth); int k = 0; switch (type) { diff --git a/jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java b/jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java index 6b700f6d7..bb1f3453f 100644 --- a/jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java +++ b/jadx-core/src/main/java/jadx/core/dex/nodes/RootNode.java @@ -378,15 +378,6 @@ public class RootNode { @Nullable public MethodNode resolveMethod(@NotNull MethodInfo mth) { - ClassNode cls = resolveClass(mth.getDeclClass()); - if (cls != null) { - return cls.searchMethod(mth); - } - return null; - } - - @Nullable - public MethodNode deepResolveMethod(@NotNull MethodInfo mth) { ClassNode cls = resolveClass(mth.getDeclClass()); if (cls == null) { return null; @@ -430,19 +421,14 @@ public class RootNode { @Nullable public FieldNode resolveField(FieldInfo field) { - ClassNode cls = resolveClass(field.getDeclClass()); - if (cls != null) { - return cls.searchField(field); - } - return null; - } - - @Nullable - public FieldNode deepResolveField(@NotNull FieldInfo field) { ClassNode cls = resolveClass(field.getDeclClass()); if (cls == null) { return null; } + FieldNode fieldNode = cls.searchField(field); + if (fieldNode != null) { + return fieldNode; + } return deepResolveField(cls, field); } diff --git a/jadx-core/src/main/java/jadx/core/dex/nodes/utils/MethodUtils.java b/jadx-core/src/main/java/jadx/core/dex/nodes/utils/MethodUtils.java index e18f97ed2..d1aab59fb 100644 --- a/jadx-core/src/main/java/jadx/core/dex/nodes/utils/MethodUtils.java +++ b/jadx-core/src/main/java/jadx/core/dex/nodes/utils/MethodUtils.java @@ -38,7 +38,7 @@ public class MethodUtils { @Nullable public IMethodDetails getMethodDetails(MethodInfo callMth) { - MethodNode mthNode = root.deepResolveMethod(callMth); + MethodNode mthNode = root.resolveMethod(callMth); if (mthNode != null) { return mthNode; } diff --git a/jadx-core/src/main/java/jadx/core/dex/visitors/ClassModifier.java b/jadx-core/src/main/java/jadx/core/dex/visitors/ClassModifier.java index c2d153f8e..09e213b31 100644 --- a/jadx-core/src/main/java/jadx/core/dex/visitors/ClassModifier.java +++ b/jadx-core/src/main/java/jadx/core/dex/visitors/ClassModifier.java @@ -244,7 +244,7 @@ public class ClassModifier extends AbstractVisitor { return false; } MethodInfo callMth = invokeInsn.getCallMth(); - MethodNode wrappedMth = mth.root().deepResolveMethod(callMth); + MethodNode wrappedMth = mth.root().resolveMethod(callMth); if (wrappedMth == null) { return false; } diff --git a/jadx-core/src/main/java/jadx/core/dex/visitors/MarkMethodsForInline.java b/jadx-core/src/main/java/jadx/core/dex/visitors/MarkMethodsForInline.java index 4878fc6b0..46a012e6c 100644 --- a/jadx-core/src/main/java/jadx/core/dex/visitors/MarkMethodsForInline.java +++ b/jadx-core/src/main/java/jadx/core/dex/visitors/MarkMethodsForInline.java @@ -106,7 +106,7 @@ public class MarkMethodsForInline extends AbstractVisitor { InsnType insnType = insn.getType(); if (insnType == InsnType.INVOKE) { InvokeNode invoke = (InvokeNode) insn; - MethodNode callMthNode = mth.root().deepResolveMethod(invoke.getCallMth()); + MethodNode callMthNode = mth.root().resolveMethod(invoke.getCallMth()); if (callMthNode != null) { FixAccessModifiers.changeVisibility(callMthNode, newVisFlag); } diff --git a/jadx-core/src/main/java/jadx/core/utils/InsnUtils.java b/jadx-core/src/main/java/jadx/core/utils/InsnUtils.java index f428d75af..3399210f6 100644 --- a/jadx-core/src/main/java/jadx/core/utils/InsnUtils.java +++ b/jadx-core/src/main/java/jadx/core/utils/InsnUtils.java @@ -96,7 +96,7 @@ public class InsnUtils { return ((ConstClassNode) insn).getClsType(); case SGET: FieldInfo f = (FieldInfo) ((IndexInsnNode) insn).getIndex(); - FieldNode fieldNode = root.deepResolveField(f); + FieldNode fieldNode = root.resolveField(f); if (fieldNode == null) { LOG.warn("Field {} not found", f); return null;