@@ -51,10 +51,10 @@ public AsmJavaClassProvider(@Nonnull View<?> view) {
51
51
52
52
@ Override
53
53
public AbstractClassSource <JavaSootClass > createClassSource (
54
- AnalysisInputLocation <? extends SootClass <?>> srcNamespace ,
54
+ AnalysisInputLocation <? extends SootClass <?>> analysisInputLocation ,
55
55
Path sourcePath ,
56
56
ClassType classType ) {
57
- SootClassNode classNode = new SootClassNode ();
57
+ SootClassNode classNode = new SootClassNode (analysisInputLocation );
58
58
59
59
try {
60
60
AsmUtil .initAsmClassSource (sourcePath , classNode );
@@ -70,10 +70,11 @@ public AbstractClassSource<JavaSootClass> createClassSource(
70
70
"Can not create ClassSource from a module info descriptor!" , sourcePath );
71
71
} else {
72
72
if (klassType instanceof AnnotationType ) {
73
- return new AsmAnnotationClassSource (srcNamespace , sourcePath , klassType , classNode );
73
+ return new AsmAnnotationClassSource (
74
+ analysisInputLocation , sourcePath , klassType , classNode );
74
75
}
75
76
76
- return new AsmClassSource (srcNamespace , sourcePath , klassType , classNode );
77
+ return new AsmClassSource (analysisInputLocation , sourcePath , klassType , classNode );
77
78
}
78
79
}
79
80
@@ -85,8 +86,11 @@ public FileType getHandledFileType() {
85
86
86
87
class SootClassNode extends ClassNode {
87
88
88
- SootClassNode () {
89
+ private final AnalysisInputLocation <? extends SootClass <?>> analysisInputLocation ;
90
+
91
+ SootClassNode (AnalysisInputLocation <? extends SootClass <?>> analysisInputLocation ) {
89
92
super (AsmUtil .SUPPORTED_ASM_OPCODE );
93
+ this .analysisInputLocation = analysisInputLocation ;
90
94
}
91
95
92
96
@ Override
@@ -98,7 +102,15 @@ public MethodVisitor visitMethod(
98
102
@ Nonnull String signature ,
99
103
@ Nonnull String [] exceptions ) {
100
104
101
- AsmMethodSource mn = new AsmMethodSource (access , name , desc , signature , exceptions , view );
105
+ AsmMethodSource mn =
106
+ new AsmMethodSource (
107
+ access ,
108
+ name ,
109
+ desc ,
110
+ signature ,
111
+ exceptions ,
112
+ view ,
113
+ view .getBodyInterceptors (analysisInputLocation ));
102
114
methods .add (mn );
103
115
return mn ;
104
116
}
0 commit comments