From af8a06347294c89f8580344a3d9a662b15496536 Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Sat, 1 Oct 2016 14:16:17 -0700 Subject: [PATCH] Set the minimum oat version for the fixed post-default-method vtable to 87 --- .../src/main/java/org/jf/dexlib2/analysis/ClassProto.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java index f8fd2e28..18e28af1 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java @@ -866,7 +866,7 @@ public class ClassProto implements TypeProto { @Nonnull public List getVtable() { if (!classPath.isArt() || classPath.oatVersion < 72) { return preDefaultMethodVtableSupplier.get(); - } else if (classPath.oatVersion < 79) { + } else if (classPath.oatVersion < 87) { return buggyPostDefaultMethodVtableSupplier.get(); } else { return postDefaultMethodVtableSupplier.get(); @@ -964,14 +964,10 @@ public class ClassProto implements TypeProto { final HashMap methodOrder = Maps.newHashMap(); - - for (int i=interfaces.size()-1; i>=0; i--) { String interfaceType = interfaces.get(i); ClassDef interfaceDef = classPath.getClassDef(interfaceType); - - for (Method interfaceMethod : interfaceDef.getVirtualMethods()) { int vtableIndex = findMethodIndexInVtableReverse(vtable, interfaceMethod);