Fix method signature

This commit is contained in:
LoveSy 2023-01-08 16:17:00 +08:00 committed by LoveSy
parent 4768d6cba4
commit 6b03c6397a
2 changed files with 8 additions and 7 deletions

View File

@ -661,9 +661,10 @@ namespace lspd {
env->SetIntArrayRegion(annotations, 0,
static_cast<jint>(field_annotations.size()),
field_annotations.data());
stopped = env->CallBooleanMethod(member_visitor, visit_field, field_idx,
access_flags, annotations);
env->CallVoidMethod(member_visitor, visit_field, field_idx,
access_flags, annotations);
env->DeleteLocalRef(annotations);
stopped = env->CallBooleanMethod(member_visitor, stop);
if (stopped == JNI_TRUE) break;
}
if (stopped == JNI_TRUE) break;

View File

@ -105,19 +105,19 @@ public interface DexParser extends Closeable {
Array[] getArrays();
interface EarlyStopVisitor {
void stop();
boolean stop();
}
interface MemberVisitor extends EarlyStopVisitor {
}
interface ClassVisitor {
interface ClassVisitor extends EarlyStopVisitor {
@Nullable
MemberVisitor visit(int clazz, int accessFlags, int superClass, @NonNull int[] interfaces, int sourceFile, @NonNull int[] staticFields, @NonNull int[] staticFieldsAccessFlags, @NonNull int[] instanceFields, @NonNull int[] instanceFieldsAccessFlags, @NonNull int[] directMethods, @NonNull int[] directMethodsAccessFlags, @NonNull int[] virtualMethods, @NonNull int[] virtualMethodsAccessFlags, @NonNull int[] annotations);
}
interface FieldVisitor extends MemberVisitor {
boolean visit(int field, int accessFlags, @NonNull int[] annotations);
void visit(int field, int accessFlags, @NonNull int[] annotations);
}
interface MethodVisitor extends MemberVisitor {
@ -125,8 +125,8 @@ public interface DexParser extends Closeable {
MethodBodyVisitor visit(int method, int accessFlags, boolean hasBody, @NonNull int[] annotations, @NonNull int[] parameterAnnotations);
}
interface MethodBodyVisitor extends MemberVisitor {
boolean visit(int method, int accessFlags, @NonNull int[] referredStrings, @NonNull int[] invokedMethods, @NonNull int[] accessedFields, @NonNull int[] assignedFields, @NonNull byte[] opcodes);
interface MethodBodyVisitor {
void visit(int method, int accessFlags, @NonNull int[] referredStrings, @NonNull int[] invokedMethods, @NonNull int[] accessedFields, @NonNull int[] assignedFields, @NonNull byte[] opcodes);
}
void visitDefinedClasses(@NonNull ClassVisitor visitor) throws IllegalStateException;