diff options
Diffstat (limited to 'tools/apicheck')
-rw-r--r-- | tools/apicheck/src/com/android/apicheck/ClassInfo.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/apicheck/src/com/android/apicheck/ClassInfo.java b/tools/apicheck/src/com/android/apicheck/ClassInfo.java index 5405ad2..d4416f4 100644 --- a/tools/apicheck/src/com/android/apicheck/ClassInfo.java +++ b/tools/apicheck/src/com/android/apicheck/ClassInfo.java @@ -121,7 +121,11 @@ public class ClassInfo { consistent = false; } for (String iface : mInterfaces) { - if (!cl.mInterfaces.contains(iface)) { + boolean found = false; + for (ClassInfo c = cl; c != null && !found; c = c.mSuperClass) { + found = c.mInterfaces.contains(iface); + } + if (!found) { Errors.error(Errors.REMOVED_INTERFACE, cl.position(), "Class " + qualifiedName() + " no longer implements " + iface); } |