From 783943ebffd3fa1e62d5fa18c44d07944fb6f29a Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Fri, 26 Jul 2019 11:28:37 -0700 Subject: [PATCH] Change OatFile to return DexBackedDexFiles, instead of OatDexFiles --- .../java/org/jf/dexlib2/DexFileFactory.java | 5 ++--- .../org/jf/dexlib2/dexbacked/OatFile.java | 19 +++++++++---------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java index f97b8243..a4855c77 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java @@ -41,7 +41,6 @@ import org.jf.dexlib2.dexbacked.DexBackedDexFile.NotADexFile; import org.jf.dexlib2.dexbacked.DexBackedOdexFile; import org.jf.dexlib2.dexbacked.OatFile; import org.jf.dexlib2.dexbacked.OatFile.NotAnOatFileException; -import org.jf.dexlib2.dexbacked.OatFile.OatDexFile; import org.jf.dexlib2.dexbacked.OatFile.VdexProvider; import org.jf.dexlib2.dexbacked.ZipDexContainer; import org.jf.dexlib2.dexbacked.ZipDexContainer.NotAZipFileException; @@ -120,7 +119,7 @@ public final class DexFileFactory { throw new UnsupportedOatVersionException(oatFile); } - List oatDexFiles = oatFile.getDexFiles(); + List oatDexFiles = oatFile.getDexFiles(); if (oatDexFiles.size() == 0) { throw new DexFileNotFoundException("Oat file %s contains no dex files", file.getName()); @@ -205,7 +204,7 @@ public final class DexFileFactory { throw new UnsupportedOatVersionException(oatFile); } - List oatDexFiles = oatFile.getDexFiles(); + List oatDexFiles = oatFile.getDexFiles(); if (oatDexFiles.size() == 0) { throw new DexFileNotFoundException("Oat file %s contains no dex files", file.getName()); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/OatFile.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/OatFile.java index 1a8828c6..87964ba0 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/OatFile.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/OatFile.java @@ -36,7 +36,6 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterators; import com.google.common.io.ByteStreams; import org.jf.dexlib2.Opcodes; -import org.jf.dexlib2.dexbacked.OatFile.OatDexFile; import org.jf.dexlib2.dexbacked.OatFile.SymbolTable.Symbol; import org.jf.dexlib2.dexbacked.raw.HeaderItem; import org.jf.dexlib2.iface.MultiDexContainer; @@ -53,7 +52,7 @@ import java.util.Arrays; import java.util.Iterator; import java.util.List; -public class OatFile extends DexBuffer implements MultiDexContainer { +public class OatFile extends DexBuffer implements MultiDexContainer { private static final byte[] ELF_MAGIC = new byte[] { 0x7f, 'E', 'L', 'F' }; private static final byte[] OAT_MAGIC = new byte[] { 'o', 'a', 't', '\n' }; private static final int MIN_ELF_HEADER_SIZE = 52; @@ -178,15 +177,15 @@ public class OatFile extends DexBuffer implements MultiDexContainer } @Nonnull - public List getDexFiles() { - return new AbstractForwardSequentialList() { + public List getDexFiles() { + return new AbstractForwardSequentialList() { @Override public int size() { return oatHeader.getDexFileCount(); } - @Nonnull @Override public Iterator iterator() { - return Iterators.transform(new DexEntryIterator(), new Function() { - @Nullable @Override public OatDexFile apply(OatDexEntry dexEntry) { + @Nonnull @Override public Iterator iterator() { + return Iterators.transform(new DexEntryIterator(), new Function() { + @Nullable @Override public DexBackedDexFile apply(OatDexEntry dexEntry) { return dexEntry.getDexFile(); } }); @@ -546,7 +545,7 @@ public class OatFile extends DexBuffer implements MultiDexContainer } } - private class OatDexEntry implements MultiDexContainer.DexEntry { + private class OatDexEntry implements MultiDexContainer.DexEntry { public final String entryName; public final byte[] buf; public final int dexOffset; @@ -557,7 +556,7 @@ public class OatFile extends DexBuffer implements MultiDexContainer this.dexOffset = dexOffset; } - public OatDexFile getDexFile() { + public DexBackedDexFile getDexFile() { return new OatDexFile(buf, dexOffset); } @@ -569,7 +568,7 @@ public class OatFile extends DexBuffer implements MultiDexContainer @Nonnull @Override - public MultiDexContainer getContainer() { + public MultiDexContainer getContainer() { return OatFile.this; } }