File tree Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Original file line number Diff line number Diff line change @@ -142,7 +142,8 @@ AnalyzeRet Analyze(const schema::MethodMatcher *matcher, int dex_depth) {
142
142
ret.declare_class .insert (ret.declare_class .end (), result.declare_class .begin (), result.declare_class .end ());
143
143
}
144
144
if (matcher->using_fields ()) {
145
- ret.need_flags |= kMethodUsingField ;
145
+ // 不初始化 kRwFieldMethod 可能会导致复杂查询无法跳转至对应的 dexItem 执行
146
+ ret.need_flags |= kMethodUsingField | kRwFieldMethod ;
146
147
for (auto i = 0 ; i < matcher->using_fields ()->size (); ++i) {
147
148
// 使用的 field 可能定义在其它 dex 中
148
149
auto result = Analyze (matcher->using_fields ()->Get (i)->field (), dex_depth + 1 );
@@ -151,7 +152,8 @@ AnalyzeRet Analyze(const schema::MethodMatcher *matcher, int dex_depth) {
151
152
}
152
153
}
153
154
if (matcher->invoking_methods ()) {
154
- ret.need_flags |= kMethodInvoking ;
155
+ // 不初始化 kCallerMethod 可能会导致复杂查询无法跳转至对应的 dexItem 执行
156
+ ret.need_flags |= kCallerMethod | kMethodInvoking ;
155
157
// invoke 的方法可能定义在其它 dex 中
156
158
auto result = Analyze (matcher->invoking_methods (), dex_depth + 1 );
157
159
ret.need_flags |= result.need_flags ;
You can’t perform that action at this time.
0 commit comments