Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
J
jadx
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open-source
jadx
Commits
03ae3bce
Commit
03ae3bce
authored
Mar 18, 2019
by
Skylot
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: process field init code in dependency collector (#467)
parent
52deb48a
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
0 deletions
+7
-0
DependencyCollector.java
...main/java/jadx/core/dex/visitors/DependencyCollector.java
+7
-0
No files found.
jadx-core/src/main/java/jadx/core/dex/visitors/DependencyCollector.java
View file @
03ae3bce
...
@@ -18,6 +18,7 @@ import jadx.core.dex.nodes.DexNode;
...
@@ -18,6 +18,7 @@ import jadx.core.dex.nodes.DexNode;
import
jadx.core.dex.nodes.FieldNode
;
import
jadx.core.dex.nodes.FieldNode
;
import
jadx.core.dex.nodes.InsnNode
;
import
jadx.core.dex.nodes.InsnNode
;
import
jadx.core.dex.nodes.MethodNode
;
import
jadx.core.dex.nodes.MethodNode
;
import
jadx.core.dex.nodes.parser.FieldInitAttr
;
import
jadx.core.utils.exceptions.JadxException
;
import
jadx.core.utils.exceptions.JadxException
;
public
class
DependencyCollector
extends
AbstractVisitor
{
public
class
DependencyCollector
extends
AbstractVisitor
{
...
@@ -41,6 +42,12 @@ public class DependencyCollector extends AbstractVisitor {
...
@@ -41,6 +42,12 @@ public class DependencyCollector extends AbstractVisitor {
}
}
for
(
FieldNode
fieldNode
:
cls
.
getFields
())
{
for
(
FieldNode
fieldNode
:
cls
.
getFields
())
{
addDep
(
dex
,
depList
,
fieldNode
.
getType
());
addDep
(
dex
,
depList
,
fieldNode
.
getType
());
// process instructions from field init
FieldInitAttr
fieldInitAttr
=
fieldNode
.
get
(
AType
.
FIELD_INIT
);
if
(
fieldInitAttr
!=
null
&&
fieldInitAttr
.
getValueType
()
==
FieldInitAttr
.
InitType
.
INSN
)
{
processInsn
(
dex
,
depList
,
fieldInitAttr
.
getInsn
());
}
}
}
// TODO: process annotations and generics
// TODO: process annotations and generics
for
(
MethodNode
methodNode
:
cls
.
getMethods
())
{
for
(
MethodNode
methodNode
:
cls
.
getMethods
())
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment