am c3c97d1d: AI 149620: mkstubs should ignore all the methods/fields/classes with default access. External bug: http://code.google.com/p/android/issues/detail?id=2806 BUG=1901455
Merge commit 'c3c97d1db391f4e400343fd69be11c8b1f951ff3' into donut * commit 'c3c97d1db391f4e400343fd69be11c8b1f951ff3': AI 149620: mkstubs should ignore all the methods/fields/classes with default access.
This commit is contained in:
committed by
The Android Open Source Project
commit
fd9b2a0b72
@@ -26,7 +26,7 @@ import org.objectweb.asm.Opcodes;
|
||||
|
||||
/**
|
||||
* A class visitor that filters out all members (fields, methods and inner classes) that are
|
||||
* either private or rejected by the {@link Filter}.
|
||||
* either private, default-access or rejected by the {@link Filter}.
|
||||
*/
|
||||
class FilterClassAdapter extends ClassAdapter {
|
||||
|
||||
@@ -64,8 +64,8 @@ class FilterClassAdapter extends ClassAdapter {
|
||||
@Override
|
||||
public FieldVisitor visitField(int access, String name, String desc,
|
||||
String signature, Object value) {
|
||||
// exclude private fields
|
||||
if ((access & Opcodes.ACC_PRIVATE) != 0) {
|
||||
// only accept public/protected fields
|
||||
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -96,8 +96,8 @@ class FilterClassAdapter extends ClassAdapter {
|
||||
public MethodVisitor visitMethod(int access, String name, String desc,
|
||||
String signature, String[] exceptions) {
|
||||
|
||||
// exclude private methods
|
||||
if ((access & Opcodes.ACC_PRIVATE) != 0) {
|
||||
// only accept public/protected methods
|
||||
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -139,8 +139,8 @@ class FilterClassAdapter extends ClassAdapter {
|
||||
@Override
|
||||
public void visitInnerClass(String name, String outerName, String innerName, int access) {
|
||||
|
||||
// exclude private methods
|
||||
if ((access & Opcodes.ACC_PRIVATE) != 0) {
|
||||
// only accept public/protected inner classes
|
||||
if ((access & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PROTECTED)) == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user