diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedAnnotation.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedAnnotation.java index 964d9206..dec18168 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedAnnotation.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedAnnotation.java @@ -48,7 +48,7 @@ public class DexBackedAnnotation extends BaseAnnotation { int annotationOffset) { this.dexFile = dexFile; - DexReader reader = dexFile.getBuffer().readerAt(annotationOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(annotationOffset); this.visibility = reader.readUbyte(); this.typeIndex = reader.readSmallUleb128(); this.elementsOffset = reader.getOffset(); @@ -60,10 +60,10 @@ public class DexBackedAnnotation extends BaseAnnotation { @Nonnull @Override public Set getElements() { - DexReader reader = dexFile.getBuffer().readerAt(elementsOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(elementsOffset); final int size = reader.readSmallUleb128(); - return new VariableSizeSet(dexFile, reader.getOffset(), size) { + return new VariableSizeSet(dexFile.getDataBuffer(), reader.getOffset(), size) { @Nonnull @Override protected DexBackedAnnotationElement readNextItem(@Nonnull DexReader reader, int index) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java index 3317257d..6babd7e1 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java @@ -82,7 +82,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { directMethodCount = 0; virtualMethodCount = 0; } else { - DexReader reader = dexFile.getBuffer().readerAt(classDataOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(classDataOffset); staticFieldCount = reader.readSmallUleb128(); instanceFieldCount = reader.readSmallUleb128(); directMethodCount = reader.readSmallUleb128(); @@ -121,15 +121,16 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull @Override public List getInterfaces() { - final int interfacesOffset = dexFile.getBuffer().readSmallUint(classDefOffset + ClassDefItem.INTERFACES_OFFSET); + final int interfacesOffset = + dexFile.getBuffer().readSmallUint(classDefOffset + ClassDefItem.INTERFACES_OFFSET); if (interfacesOffset > 0) { - final int size = dexFile.getBuffer().readSmallUint(interfacesOffset); + final int size = dexFile.getDataBuffer().readSmallUint(interfacesOffset); return new AbstractList() { @Override @Nonnull public String get(int index) { return dexFile.getTypeSection().get( - dexFile.getBuffer().readUshort(interfacesOffset + 4 + (2*index))); + dexFile.getDataBuffer().readUshort(interfacesOffset + 4 + (2*index))); } @Override public int size() { return size; } @@ -153,7 +154,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull public Iterable getStaticFields(final boolean skipDuplicates) { if (staticFieldCount > 0) { - DexReader reader = dexFile.getBuffer().readerAt(staticFieldsOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(staticFieldsOffset); final AnnotationsDirectory annotationsDirectory = getAnnotationsDirectory(); final int staticInitialValuesOffset = @@ -169,7 +170,8 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { final EncodedArrayItemIterator staticInitialValueIterator = EncodedArrayItemIterator.newOrEmpty(dexFile, staticInitialValuesOffset); - return new VariableSizeLookaheadIterator(dexFile, fieldsStartOffset) { + return new VariableSizeLookaheadIterator( + dexFile.getDataBuffer(), fieldsStartOffset) { private int count; @Nullable private FieldReference previousField; private int previousIndex; @@ -216,7 +218,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull public Iterable getInstanceFields(final boolean skipDuplicates) { if (instanceFieldCount > 0) { - DexReader reader = dexFile.getBuffer().readerAt(getInstanceFieldsOffset()); + DexReader reader = dexFile.getDataBuffer().readerAt(getInstanceFieldsOffset()); final AnnotationsDirectory annotationsDirectory = getAnnotationsDirectory(); final int fieldsStartOffset = reader.getOffset(); @@ -228,7 +230,8 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { final AnnotationsDirectory.AnnotationIterator annotationIterator = annotationsDirectory.getFieldAnnotationIterator(); - return new VariableSizeLookaheadIterator(dexFile, fieldsStartOffset) { + return new VariableSizeLookaheadIterator( + dexFile.getDataBuffer(), fieldsStartOffset) { private int count; @Nullable private FieldReference previousField; private int previousIndex; @@ -283,7 +286,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull public Iterable getDirectMethods(final boolean skipDuplicates) { if (directMethodCount > 0) { - DexReader reader = dexFile.getBuffer().readerAt(getDirectMethodsOffset()); + DexReader reader = dexFile.getDataBuffer().readerAt(getDirectMethodsOffset()); final AnnotationsDirectory annotationsDirectory = getAnnotationsDirectory(); final int methodsStartOffset = reader.getOffset(); @@ -297,7 +300,8 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { final AnnotationsDirectory.AnnotationIterator parameterAnnotationIterator = annotationsDirectory.getParameterAnnotationIterator(); - return new VariableSizeLookaheadIterator(dexFile, methodsStartOffset) { + return new VariableSizeLookaheadIterator( + dexFile.getDataBuffer(), methodsStartOffset) { private int count; @Nullable private MethodReference previousMethod; private int previousIndex; @@ -340,7 +344,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull public Iterable getVirtualMethods(final boolean skipDuplicates) { if (virtualMethodCount > 0) { - DexReader reader = dexFile.getBuffer().readerAt(getVirtualMethodsOffset()); + DexReader reader = dexFile.getDataBuffer().readerAt(getVirtualMethodsOffset()); final AnnotationsDirectory annotationsDirectory = getAnnotationsDirectory(); final int methodsStartOffset = reader.getOffset(); @@ -354,7 +358,8 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { @Nonnull @Override public Iterator iterator() { - return new VariableSizeLookaheadIterator(dexFile, methodsStartOffset) { + return new VariableSizeLookaheadIterator( + dexFile.getDataBuffer(), methodsStartOffset) { private int count; @Nullable private MethodReference previousMethod; private int previousIndex; @@ -414,7 +419,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { if (instanceFieldsOffset > 0) { return instanceFieldsOffset; } - DexReader reader = dexFile.getBuffer().readerAt(staticFieldsOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(staticFieldsOffset); DexBackedField.skipFields(reader, staticFieldCount); instanceFieldsOffset = reader.getOffset(); return instanceFieldsOffset; @@ -424,7 +429,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { if (directMethodsOffset > 0) { return directMethodsOffset; } - DexReader reader = dexFile.getBuffer().readerAt(getInstanceFieldsOffset()); + DexReader reader = dexFile.getDataBuffer().readerAt(getInstanceFieldsOffset()); DexBackedField.skipFields(reader, instanceFieldCount); directMethodsOffset = reader.getOffset(); return directMethodsOffset; @@ -434,7 +439,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { if (virtualMethodsOffset > 0) { return virtualMethodsOffset; } - DexReader reader = dexFile.getBuffer().readerAt(getDirectMethodsOffset()); + DexReader reader = dexFile.getDataBuffer().readerAt(getDirectMethodsOffset()); DexBackedMethod.skipMethods(reader, directMethodCount); virtualMethodsOffset = reader.getOffset(); return virtualMethodsOffset; @@ -477,14 +482,14 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef { int staticInitialValuesOffset = dexFile.getBuffer().readSmallUint(classDefOffset + ClassDefItem.STATIC_VALUES_OFFSET); if (staticInitialValuesOffset != 0) { - DexReader reader = dexFile.getBuffer().readerAt(staticInitialValuesOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(staticInitialValuesOffset); size += reader.peekSmallUleb128Size(); //encoded_array size field } //class_data_item int classDataOffset = dexFile.getBuffer().readSmallUint(classDefOffset + ClassDefItem.CLASS_DATA_OFFSET); if (classDataOffset > 0) { - DexReader reader = dexFile.getBuffer().readerAt(classDataOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(classDataOffset); reader.readSmallUleb128(); //staticFieldCount reader.readSmallUleb128(); //instanceFieldCount reader.readSmallUleb128(); //directMethodCount diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java index 1783f5fa..77f1de0d 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java @@ -210,7 +210,7 @@ public class DexBackedDexFile implements DexFile { } public List getMapItems() { - final int mapSize = dexBuffer.readSmallUint(mapOffset); + final int mapSize = dataBuffer.readSmallUint(mapOffset); return new FixedSizeList() { @Override @@ -257,7 +257,7 @@ public class DexBackedDexFile implements DexFile { public String get(int index) { int stringOffset = getOffset(index); int stringDataOffset = dexBuffer.readSmallUint(stringOffset); - DexReader reader = dexBuffer.readerAt(stringDataOffset); + DexReader reader = dataBuffer.readerAt(stringDataOffset); int utf16Length = reader.readSmallUleb128(); return reader.readString(utf16Length); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethod.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethod.java index ceb090c3..585df9da 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethod.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethod.java @@ -168,13 +168,13 @@ public class DexBackedMethod extends BaseMethodReference implements Method { public List getParameterTypes() { final int parametersOffset = getParametersOffset(); if (parametersOffset > 0) { - final int parameterCount = dexFile.getBuffer().readSmallUint(parametersOffset + TypeListItem.SIZE_OFFSET); + final int parameterCount = dexFile.getDataBuffer().readSmallUint(parametersOffset + TypeListItem.SIZE_OFFSET); final int paramListStart = parametersOffset + TypeListItem.LIST_OFFSET; return new FixedSizeList() { @Nonnull @Override public String readItem(final int index) { - return dexFile.getTypeSection().get(dexFile.getBuffer().readUshort(paramListStart + 2*index)); + return dexFile.getTypeSection().get(dexFile.getDataBuffer().readUshort(paramListStart + 2*index)); } @Override public int size() { return parameterCount; } }; @@ -245,7 +245,7 @@ public class DexBackedMethod extends BaseMethodReference implements Method { public int getSize() { int size = 0; - DexReader reader = dexFile.getBuffer().readerAt(startOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(startOffset); reader.readLargeUleb128(); //method_idx_diff reader.readSmallUleb128(); //access_flags reader.readSmallUleb128(); //code_off diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java index abee316f..f754a113 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java @@ -66,14 +66,15 @@ public class DexBackedMethodImplementation implements MethodImplementation { @Nonnull @Override public Iterable getInstructions() { // instructionsSize is the number of 16-bit code units in the instruction list, not the number of instructions - int instructionsSize = dexFile.getBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET); + int instructionsSize = dexFile.getDataBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET); final int instructionsStartOffset = codeOffset + CodeItem.INSTRUCTION_START_OFFSET; final int endOffset = instructionsStartOffset + (instructionsSize*2); return new Iterable() { @Override public Iterator iterator() { - return new VariableSizeLookaheadIterator(dexFile, instructionsStartOffset) { + return new VariableSizeLookaheadIterator( + dexFile.getDataBuffer(), instructionsStartOffset) { @Override protected Instruction readNextItem(@Nonnull DexReader reader) { if (reader.getOffset() >= endOffset) { @@ -97,9 +98,9 @@ public class DexBackedMethodImplementation implements MethodImplementation { @Nonnull @Override public List getTryBlocks() { - final int triesSize = dexFile.getBuffer().readUshort(codeOffset + CodeItem.TRIES_SIZE_OFFSET); + final int triesSize = dexFile.getDataBuffer().readUshort(codeOffset + CodeItem.TRIES_SIZE_OFFSET); if (triesSize > 0) { - int instructionsSize = dexFile.getBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET); + int instructionsSize = dexFile.getDataBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET); final int triesStartOffset = AlignmentUtils.alignOffset( codeOffset + CodeItem.INSTRUCTION_START_OFFSET + (instructionsSize*2), 4); final int handlersStartOffset = triesStartOffset + triesSize*CodeItem.TryItem.ITEM_SIZE; @@ -124,7 +125,7 @@ public class DexBackedMethodImplementation implements MethodImplementation { @Nonnull private DebugInfo getDebugInfo() { - int debugOffset = dexFile.getBuffer().readInt(codeOffset + CodeItem.DEBUG_INFO_OFFSET); + int debugOffset = dexFile.getDataBuffer().readInt(codeOffset + CodeItem.DEBUG_INFO_OFFSET); if (debugOffset == -1 || debugOffset == 0) { return DebugInfo.newOrEmpty(dexFile, 0, this); @@ -133,7 +134,7 @@ public class DexBackedMethodImplementation implements MethodImplementation { System.err.println(String.format("%s: Invalid debug offset", method)); return DebugInfo.newOrEmpty(dexFile, 0, this); } - if (debugOffset >= dexFile.getBuffer().buf.length) { + if ((debugOffset + dexFile.getBaseDataOffset()) >= dexFile.getBuffer().buf.length) { System.err.println(String.format("%s: Invalid debug offset", method)); return DebugInfo.newOrEmpty(dexFile, 0, this); } @@ -164,7 +165,7 @@ public class DexBackedMethodImplementation implements MethodImplementation { int lastOffset = codeOffset + CodeItem.INSTRUCTION_START_OFFSET; //set code_item ending offset to the end of instructions list (insns_size * ushort) - lastOffset += dexFile.getBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET) * 2; + lastOffset += dexFile.getDataBuffer().readSmallUint(codeOffset + CodeItem.INSTRUCTION_COUNT_OFFSET) * 2; //read any exception handlers and move code_item offset to the end for (DexBackedTryBlock tryBlock: getTryBlocks()) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedOdexFile.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedOdexFile.java index f17cd39f..eb38853c 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedOdexFile.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedOdexFile.java @@ -66,7 +66,8 @@ public class DexBackedOdexFile extends DexBackedDexFile { DexBuffer fromStartBuffer = new DexBuffer(getBuffer().buf, 0); int dependencyCount = fromStartBuffer.readInt(dependencyOffset + DEPENDENCY_COUNT_OFFSET); - return new VariableSizeList(this, dependencyOffset + DEPENDENCY_START_OFFSET, dependencyCount) { + return new VariableSizeList( + this.getDataBuffer(), dependencyOffset + DEPENDENCY_START_OFFSET, dependencyCount) { @Override protected String readNextItem(@Nonnull DexReader reader, int index) { int length = reader.readInt(); int offset = reader.getOffset(); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedTryBlock.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedTryBlock.java index 821afac5..c9cf21fb 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedTryBlock.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedTryBlock.java @@ -52,23 +52,24 @@ public class DexBackedTryBlock extends BaseTryBlock { } @Override public int getStartCodeAddress() { - return dexFile.getBuffer().readSmallUint(tryItemOffset + CodeItem.TryItem.START_ADDRESS_OFFSET); + return dexFile.getDataBuffer().readSmallUint(tryItemOffset + CodeItem.TryItem.START_ADDRESS_OFFSET); } @Override public int getCodeUnitCount() { - return dexFile.getBuffer().readUshort(tryItemOffset + CodeItem.TryItem.CODE_UNIT_COUNT_OFFSET); + return dexFile.getDataBuffer().readUshort(tryItemOffset + CodeItem.TryItem.CODE_UNIT_COUNT_OFFSET); } @Nonnull @Override public List getExceptionHandlers() { - DexReader reader = dexFile.getBuffer().readerAt( - handlersStartOffset + dexFile.getBuffer().readUshort(tryItemOffset + CodeItem.TryItem.HANDLER_OFFSET)); + DexReader reader = dexFile.getDataBuffer().readerAt( + handlersStartOffset + dexFile.getDataBuffer().readUshort(tryItemOffset + CodeItem.TryItem.HANDLER_OFFSET)); final int encodedSize = reader.readSleb128(); if (encodedSize > 0) { //no catch-all - return new VariableSizeList(dexFile, reader.getOffset(), encodedSize) { + return new VariableSizeList( + dexFile.getDataBuffer(), reader.getOffset(), encodedSize) { @Nonnull @Override protected DexBackedTypedExceptionHandler readNextItem(@Nonnull DexReader reader, int index) { @@ -78,7 +79,8 @@ public class DexBackedTryBlock extends BaseTryBlock { } else { //with catch-all final int sizeWithCatchAll = (-1 * encodedSize) + 1; - return new VariableSizeList(dexFile, reader.getOffset(), sizeWithCatchAll) { + return new VariableSizeList( + dexFile.getDataBuffer(), reader.getOffset(), sizeWithCatchAll) { @Nonnull @Override protected DexBackedExceptionHandler readNextItem(@Nonnull DexReader dexReader, int index) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java index 3ce94ee0..0f689807 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java @@ -54,8 +54,8 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array int instructionStart) { super(dexFile, OPCODE, instructionStart); - elementWidth = dexFile.getBuffer().readUshort(instructionStart + ELEMENT_WIDTH_OFFSET); - elementCount = dexFile.getBuffer().readSmallUint(instructionStart + ELEMENT_COUNT_OFFSET); + elementWidth = dexFile.getDataBuffer().readUshort(instructionStart + ELEMENT_WIDTH_OFFSET); + elementCount = dexFile.getDataBuffer().readSmallUint(instructionStart + ELEMENT_COUNT_OFFSET); if (((long)elementWidth) * elementCount > Integer.MAX_VALUE) { throw new ExceptionWithContext("Invalid array-payload instruction: element width*count overflows"); } @@ -78,7 +78,7 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array @Nonnull @Override public Number readItem(int index) { - return dexFile.getBuffer().readByte(elementsStart + index); + return dexFile.getDataBuffer().readByte(elementsStart + index); } }; case 2: @@ -86,7 +86,7 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array @Nonnull @Override public Number readItem(int index) { - return dexFile.getBuffer().readShort(elementsStart + index*2); + return dexFile.getDataBuffer().readShort(elementsStart + index*2); } }; case 4: @@ -94,7 +94,7 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array @Nonnull @Override public Number readItem(int index) { - return dexFile.getBuffer().readInt(elementsStart + index*4); + return dexFile.getDataBuffer().readInt(elementsStart + index*4); } }; case 8: @@ -102,7 +102,7 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array @Nonnull @Override public Number readItem(int index) { - return dexFile.getBuffer().readLong(elementsStart + index*8); + return dexFile.getDataBuffer().readLong(elementsStart + index*8); } }; default: diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java index 55fd3bb7..b4abb059 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java @@ -66,7 +66,9 @@ public abstract class DexBackedInstruction implements Instruction { Opcode opcode = dexFile.getOpcodes().getOpcodeByValue(opcodeValue); - Instruction instruction = buildInstruction(dexFile, opcode, reader.getOffset()); + Instruction instruction = buildInstruction(dexFile, opcode, + reader.getOffset() + reader.dexBuf.getBaseOffset() - + dexFile.getBuffer().getBaseOffset() - dexFile.getBaseDataOffset()); reader.moveRelative(instruction.getCodeUnits()*2); return instruction; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction10t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction10t.java index f8cd9913..a228530e 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction10t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction10t.java @@ -44,5 +44,5 @@ public class DexBackedInstruction10t extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readByte(instructionStart + 1); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readByte(instructionStart + 1); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11n.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11n.java index 0fc7214a..d36642cd 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11n.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11n.java @@ -47,12 +47,12 @@ public class DexBackedInstruction11n extends DexBackedInstruction implements Ins @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getNarrowLiteral() { - return NibbleUtils.extractHighSignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighSignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public long getWideLiteral() { return getNarrowLiteral(); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11x.java index db117f7b..2111e82d 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11x.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction11x.java @@ -44,5 +44,5 @@ public class DexBackedInstruction11x extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction12x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction12x.java index 0047e7a5..ddd26870 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction12x.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction12x.java @@ -47,11 +47,11 @@ public class DexBackedInstruction12x extends DexBackedInstruction implements Ins @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getRegisterB() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20bc.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20bc.java index 9b8a81e7..dad4c57a 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20bc.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20bc.java @@ -47,12 +47,14 @@ public class DexBackedInstruction20bc extends DexBackedInstruction implements In super(dexFile, opcode, instructionStart); } - @Override public int getVerificationError() { return dexFile.getBuffer().readUbyte(instructionStart + 1) & 0x3f; } + @Override public int getVerificationError() { + return dexFile.getDataBuffer().readUbyte(instructionStart + 1) & 0x3f; + } @Nonnull @Override public Reference getReference() { - int referenceIndex = dexFile.getBuffer().readUshort(instructionStart + 2); + int referenceIndex = dexFile.getDataBuffer().readUshort(instructionStart + 2); try { int referenceType = getReferenceType(); return DexBackedReference.makeReference(dexFile, referenceType, referenceIndex); @@ -68,7 +70,7 @@ public class DexBackedInstruction20bc extends DexBackedInstruction implements In } @Override public int getReferenceType() { - int referenceType = (dexFile.getBuffer().readUbyte(instructionStart + 1) >>> 6) + 1; + int referenceType = (dexFile.getDataBuffer().readUbyte(instructionStart + 1) >>> 6) + 1; ReferenceType.validateReferenceType(referenceType); return referenceType; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20t.java index 1b28f26c..57b61b26 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction20t.java @@ -44,5 +44,5 @@ public class DexBackedInstruction20t extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readShort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21c.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21c.java index a9ad724c..65df4186 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21c.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21c.java @@ -46,13 +46,13 @@ public class DexBackedInstruction21c extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference( - dexFile, opcode.referenceType, dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile, opcode.referenceType, dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21ih.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21ih.java index 94d0cfce..e104ee97 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21ih.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21ih.java @@ -44,8 +44,8 @@ public class DexBackedInstruction21ih extends DexBackedInstruction implements In super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public int getNarrowLiteral() { return getHatLiteral() << 16; } @Override public long getWideLiteral() { return getNarrowLiteral(); } - @Override public short getHatLiteral() { return (short)dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public short getHatLiteral() { return (short)dexFile.getDataBuffer().readShort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21lh.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21lh.java index 0cce46ed..b0b9a931 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21lh.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21lh.java @@ -44,7 +44,7 @@ public class DexBackedInstruction21lh extends DexBackedInstruction implements In super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public long getWideLiteral() { return ((long)getHatLiteral()) << 48; } - @Override public short getHatLiteral() { return (short)dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public short getHatLiteral() { return (short)dexFile.getDataBuffer().readShort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21s.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21s.java index a27084c2..12d6d857 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21s.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21s.java @@ -44,7 +44,7 @@ public class DexBackedInstruction21s extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getNarrowLiteral() { return dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getNarrowLiteral() { return dexFile.getDataBuffer().readShort(instructionStart + 2); } @Override public long getWideLiteral() { return getNarrowLiteral(); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21t.java index 049c409f..98445efa 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction21t.java @@ -44,6 +44,6 @@ public class DexBackedInstruction21t extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readShort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22b.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22b.java index 856d01fa..8a502f66 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22b.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22b.java @@ -44,8 +44,8 @@ public class DexBackedInstruction22b extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getRegisterB() { return dexFile.getBuffer().readUbyte(instructionStart + 2); } - @Override public int getNarrowLiteral() { return dexFile.getBuffer().readByte(instructionStart + 3); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterB() { return dexFile.getDataBuffer().readUbyte(instructionStart + 2); } + @Override public int getNarrowLiteral() { return dexFile.getDataBuffer().readByte(instructionStart + 3); } @Override public long getWideLiteral() { return getNarrowLiteral(); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22c.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22c.java index 7c45ce2a..f21dd3b8 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22c.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22c.java @@ -49,19 +49,19 @@ public class DexBackedInstruction22c extends DexBackedInstruction implements Ins @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getRegisterB() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference( - dexFile, opcode.referenceType, dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile, opcode.referenceType, dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22cs.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22cs.java index f5518758..ca77953e 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22cs.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22cs.java @@ -47,16 +47,16 @@ public class DexBackedInstruction22cs extends DexBackedInstruction implements In @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getRegisterB() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getFieldOffset() { - return dexFile.getBuffer().readUshort(instructionStart + 2); + return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22s.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22s.java index d84736f2..e9f064d0 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22s.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22s.java @@ -47,14 +47,14 @@ public class DexBackedInstruction22s extends DexBackedInstruction implements Ins @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getRegisterB() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } - @Override public int getNarrowLiteral() { return dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public int getNarrowLiteral() { return dexFile.getDataBuffer().readShort(instructionStart + 2); } @Override public long getWideLiteral() { return getNarrowLiteral(); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22t.java index 2300f160..01b7f373 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22t.java @@ -47,13 +47,13 @@ public class DexBackedInstruction22t extends DexBackedInstruction implements Ins @Override public int getRegisterA() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } @Override public int getRegisterB() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readByte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readByte(instructionStart + 1)); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readShort(instructionStart + 2); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readShort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22x.java index 0834c964..799c5386 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22x.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction22x.java @@ -44,6 +44,6 @@ public class DexBackedInstruction22x extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getRegisterB() { return dexFile.getBuffer().readUshort(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterB() { return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction23x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction23x.java index 24ac7c41..867c7f36 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction23x.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction23x.java @@ -44,7 +44,7 @@ public class DexBackedInstruction23x extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getRegisterB() { return dexFile.getBuffer().readUbyte(instructionStart + 2); } - @Override public int getRegisterC() { return dexFile.getBuffer().readUbyte(instructionStart + 3); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterB() { return dexFile.getDataBuffer().readUbyte(instructionStart + 2); } + @Override public int getRegisterC() { return dexFile.getDataBuffer().readUbyte(instructionStart + 3); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction30t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction30t.java index f15196a0..dd6f6cc2 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction30t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction30t.java @@ -44,5 +44,5 @@ public class DexBackedInstruction30t extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readInt(instructionStart + 2); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readInt(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31c.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31c.java index bc78feb8..a2dabfbf 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31c.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31c.java @@ -46,13 +46,13 @@ public class DexBackedInstruction31c extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference(dexFile, opcode.referenceType, - dexFile.getBuffer().readSmallUint(instructionStart + 2)); + dexFile.getDataBuffer().readSmallUint(instructionStart + 2)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31i.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31i.java index 8f7b8856..20e443fd 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31i.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31i.java @@ -44,7 +44,7 @@ public class DexBackedInstruction31i extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getNarrowLiteral() { return dexFile.getBuffer().readInt(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getNarrowLiteral() { return dexFile.getDataBuffer().readInt(instructionStart + 2); } @Override public long getWideLiteral() { return getNarrowLiteral(); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31t.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31t.java index 7ce22372..5410f229 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31t.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction31t.java @@ -44,6 +44,6 @@ public class DexBackedInstruction31t extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public int getCodeOffset() { return dexFile.getBuffer().readInt(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public int getCodeOffset() { return dexFile.getDataBuffer().readInt(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction32x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction32x.java index b286ba02..b0dc8920 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction32x.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction32x.java @@ -44,6 +44,6 @@ public class DexBackedInstruction32x extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUshort(instructionStart + 2); } - @Override public int getRegisterB() { return dexFile.getBuffer().readUshort(instructionStart + 4); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUshort(instructionStart + 2); } + @Override public int getRegisterB() { return dexFile.getDataBuffer().readUshort(instructionStart + 4); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35c.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35c.java index 71675d77..b2c90659 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35c.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35c.java @@ -48,39 +48,39 @@ public class DexBackedInstruction35c extends DexBackedInstruction implements Ins } @Override public int getRegisterCount() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getRegisterC() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterD() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterE() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterF() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterG() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference(dexFile, opcode.referenceType, - dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35mi.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35mi.java index 829b1ebd..b9f268bf 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35mi.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35mi.java @@ -46,36 +46,36 @@ public class DexBackedInstruction35mi extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getRegisterC() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterD() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterE() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterF() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterG() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getInlineIndex() { - return dexFile.getBuffer().readUshort(instructionStart + 2); + return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35ms.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35ms.java index 98cdb5af..d306de01 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35ms.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction35ms.java @@ -46,36 +46,36 @@ public class DexBackedInstruction35ms extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getRegisterC() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterD() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterE() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterF() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterG() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getVtableIndex() { - return dexFile.getBuffer().readUshort(instructionStart + 2); + return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rc.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rc.java index 74ff2742..82810187 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rc.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rc.java @@ -47,19 +47,19 @@ public class DexBackedInstruction3rc extends DexBackedInstruction implements Ins } @Override public int getRegisterCount() { - return dexFile.getBuffer().readUbyte(instructionStart + 1); + return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public int getStartRegister() { - return dexFile.getBuffer().readUshort(instructionStart + 4); + return dexFile.getDataBuffer().readUshort(instructionStart + 4); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference(dexFile, opcode.referenceType, - dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rmi.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rmi.java index eb09c629..de8e31fc 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rmi.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rmi.java @@ -45,16 +45,16 @@ public class DexBackedInstruction3rmi extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return dexFile.getBuffer().readUbyte(instructionStart + 1); + return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public int getStartRegister() { - return dexFile.getBuffer().readUshort(instructionStart + 4); + return dexFile.getDataBuffer().readUshort(instructionStart + 4); } @Override public int getInlineIndex() { - return dexFile.getBuffer().readUshort(instructionStart + 2); + return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rms.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rms.java index de917b48..3902309a 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rms.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction3rms.java @@ -45,16 +45,16 @@ public class DexBackedInstruction3rms extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return dexFile.getBuffer().readUbyte(instructionStart + 1); + return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public int getStartRegister() { - return dexFile.getBuffer().readUshort(instructionStart + 4); + return dexFile.getDataBuffer().readUshort(instructionStart + 4); } @Override public int getVtableIndex() { - return dexFile.getBuffer().readUshort(instructionStart + 2); + return dexFile.getDataBuffer().readUshort(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction45cc.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction45cc.java index cefaa039..e9201f08 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction45cc.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction45cc.java @@ -48,39 +48,39 @@ public class DexBackedInstruction45cc extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Override public int getRegisterC() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterD() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 4)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 4)); } @Override public int getRegisterE() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterF() { - return NibbleUtils.extractHighUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 5)); + return NibbleUtils.extractHighUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 5)); } @Override public int getRegisterG() { - return NibbleUtils.extractLowUnsignedNibble(dexFile.getBuffer().readUbyte(instructionStart + 1)); + return NibbleUtils.extractLowUnsignedNibble(dexFile.getDataBuffer().readUbyte(instructionStart + 1)); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference(dexFile, opcode.referenceType, - dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override @@ -91,7 +91,7 @@ public class DexBackedInstruction45cc extends DexBackedInstruction implements In @Override public Reference getReference2() { return DexBackedReference.makeReference(dexFile, opcode.referenceType2, - dexFile.getBuffer().readUshort(instructionStart + 6)); + dexFile.getDataBuffer().readUshort(instructionStart + 6)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction4rcc.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction4rcc.java index 3d15fd41..314dd191 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction4rcc.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction4rcc.java @@ -47,19 +47,19 @@ public class DexBackedInstruction4rcc extends DexBackedInstruction implements In } @Override public int getRegisterCount() { - return dexFile.getBuffer().readUbyte(instructionStart + 1); + return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } @Override public int getStartRegister() { - return dexFile.getBuffer().readUshort(instructionStart + 4); + return dexFile.getDataBuffer().readUshort(instructionStart + 4); } @Nonnull @Override public Reference getReference() { return DexBackedReference.makeReference(dexFile, opcode.referenceType, - dexFile.getBuffer().readUshort(instructionStart + 2)); + dexFile.getDataBuffer().readUshort(instructionStart + 2)); } @Override @@ -70,7 +70,7 @@ public class DexBackedInstruction4rcc extends DexBackedInstruction implements In @Override public Reference getReference2() { return DexBackedReference.makeReference(dexFile, opcode.referenceType2, - dexFile.getBuffer().readUshort(instructionStart + 6)); + dexFile.getDataBuffer().readUshort(instructionStart + 6)); } @Override diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction51l.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction51l.java index ce72412f..a0d88ff2 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction51l.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction51l.java @@ -44,6 +44,6 @@ public class DexBackedInstruction51l extends DexBackedInstruction implements Ins super(dexFile, opcode, instructionStart); } - @Override public int getRegisterA() { return dexFile.getBuffer().readUbyte(instructionStart + 1); } - @Override public long getWideLiteral() { return dexFile.getBuffer().readLong(instructionStart + 2); } + @Override public int getRegisterA() { return dexFile.getDataBuffer().readUbyte(instructionStart + 1); } + @Override public long getWideLiteral() { return dexFile.getDataBuffer().readLong(instructionStart + 2); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedPackedSwitchPayload.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedPackedSwitchPayload.java index e8a12433..cd5c34de 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedPackedSwitchPayload.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedPackedSwitchPayload.java @@ -51,13 +51,13 @@ public class DexBackedPackedSwitchPayload extends DexBackedInstruction implement int instructionStart) { super(dexFile, Opcode.PACKED_SWITCH_PAYLOAD, instructionStart); - elementCount = dexFile.getBuffer().readUshort(instructionStart + ELEMENT_COUNT_OFFSET); + elementCount = dexFile.getDataBuffer().readUshort(instructionStart + ELEMENT_COUNT_OFFSET); } @Nonnull @Override public List getSwitchElements() { - final int firstKey = dexFile.getBuffer().readInt(instructionStart + FIRST_KEY_OFFSET); + final int firstKey = dexFile.getDataBuffer().readInt(instructionStart + FIRST_KEY_OFFSET); return new FixedSizeList() { @Nonnull @Override @@ -70,7 +70,7 @@ public class DexBackedPackedSwitchPayload extends DexBackedInstruction implement @Override public int getOffset() { - return dexFile.getBuffer().readInt(instructionStart + TARGETS_OFFSET + index*4); + return dexFile.getDataBuffer().readInt(instructionStart + TARGETS_OFFSET + index*4); } }; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedSparseSwitchPayload.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedSparseSwitchPayload.java index 7c673f33..4d6e960d 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedSparseSwitchPayload.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedSparseSwitchPayload.java @@ -50,7 +50,7 @@ public class DexBackedSparseSwitchPayload extends DexBackedInstruction implement int instructionStart) { super(dexFile, Opcode.SPARSE_SWITCH_PAYLOAD, instructionStart); - elementCount = dexFile.getBuffer().readUshort(instructionStart + ELEMENT_COUNT_OFFSET); + elementCount = dexFile.getDataBuffer().readUshort(instructionStart + ELEMENT_COUNT_OFFSET); } @Nonnull @@ -63,12 +63,12 @@ public class DexBackedSparseSwitchPayload extends DexBackedInstruction implement return new SwitchElement() { @Override public int getKey() { - return dexFile.getBuffer().readInt(instructionStart + KEYS_OFFSET + index*4); + return dexFile.getDataBuffer().readInt(instructionStart + KEYS_OFFSET + index*4); } @Override public int getOffset() { - return dexFile.getBuffer().readInt(instructionStart + KEYS_OFFSET + elementCount*4 + index*4); + return dexFile.getDataBuffer().readInt(instructionStart + KEYS_OFFSET + elementCount*4 + index*4); } }; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedUnknownInstruction.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedUnknownInstruction.java index 6b38228c..02f0dc5f 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedUnknownInstruction.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedUnknownInstruction.java @@ -44,9 +44,9 @@ public class DexBackedUnknownInstruction extends DexBackedInstruction implements } @Override public int getOriginalOpcode() { - int opcode = dexFile.getBuffer().readUbyte(instructionStart); + int opcode = dexFile.getDataBuffer().readUbyte(instructionStart); if (opcode == 0) { - opcode = dexFile.getBuffer().readUshort(instructionStart); + opcode = dexFile.getDataBuffer().readUshort(instructionStart); } return opcode; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/AnnotationItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/AnnotationItem.java index f929b5ac..6d0cd864 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/AnnotationItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/AnnotationItem.java @@ -77,7 +77,7 @@ public class AnnotationItem { public static String getReferenceAnnotation(@Nonnull DexBackedDexFile dexFile, int annotationItemOffset) { try { - DexReader reader = dexFile.getBuffer().readerAt(annotationItemOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(annotationItemOffset); reader.readUbyte(); int typeIndex = reader.readSmallUleb128(); String annotationType = dexFile.getTypeSection().get(typeIndex); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CallSiteIdItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CallSiteIdItem.java index bd381f88..ff18914f 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CallSiteIdItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CallSiteIdItem.java @@ -58,7 +58,7 @@ public class CallSiteIdItem { StringWriter writer = new StringWriter(); try { EncodedValueUtils.writeEncodedValue(writer, - new DexBackedArrayEncodedValue(dexFile, dexFile.getBuffer().readerAt(callSiteOffset))); + new DexBackedArrayEncodedValue(dexFile, dexFile.getDataBuffer().readerAt(callSiteOffset))); } catch (IOException ex) { // Shouldn't get an IOException from a StringWriter.. throw new RuntimeException(ex); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/ClassDataItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/ClassDataItem.java index a5d2d834..57a3ab69 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/ClassDataItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/ClassDataItem.java @@ -52,7 +52,6 @@ public class ClassDataItem { super.annotateSection(out); } - @Nonnull @Override public String getItemName() { return "class_data_item"; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/MapItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/MapItem.java index 885e6130..4e76997e 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/MapItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/MapItem.java @@ -54,7 +54,7 @@ public class MapItem { } public int getType() { - return dexFile.getBuffer().readUshort(offset + TYPE_OFFSET); + return dexFile.getDataBuffer().readUshort(offset + TYPE_OFFSET); } @Nonnull @@ -63,11 +63,11 @@ public class MapItem { } public int getItemCount() { - return dexFile.getBuffer().readSmallUint(offset + SIZE_OFFSET); + return dexFile.getDataBuffer().readSmallUint(offset + SIZE_OFFSET); } public int getOffset() { - return dexFile.getBuffer().readSmallUint(offset + OFFSET_OFFSET); + return dexFile.getDataBuffer().readSmallUint(offset + OFFSET_OFFSET); } @Nonnull diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/SectionAnnotator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/SectionAnnotator.java index 630df622..aa3a7666 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/SectionAnnotator.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/SectionAnnotator.java @@ -55,7 +55,12 @@ public abstract class SectionAnnotator { this.dexFile = annotator.dexFile; this.itemType = mapItem.getType(); - this.sectionOffset = mapItem.getOffset(); + if (mapItem.getType() >= ItemType.MAP_LIST) { + this.sectionOffset = mapItem.getOffset() + dexFile.getBaseDataOffset(); + } else { + this.sectionOffset = mapItem.getOffset(); + } + this.itemCount = mapItem.getItemCount(); } @@ -103,7 +108,7 @@ public abstract class SectionAnnotator { } public void setItemIdentity(int itemOffset, String identity) { - itemIdentities.put(itemOffset, identity); + itemIdentities.put(itemOffset + dexFile.getBaseDataOffset(), identity); } public int getItemAlignment() { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/StringIdItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/StringIdItem.java index 2982cfe2..f8db2f84 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/StringIdItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/StringIdItem.java @@ -71,7 +71,6 @@ public class StringIdItem { @Nonnull public static String getReferenceAnnotation(@Nonnull DexBackedDexFile dexFile, int stringIndex) { return getReferenceAnnotation(dexFile, stringIndex, false); - } public static String getReferenceAnnotation(@Nonnull DexBackedDexFile dexFile, int stringIndex, boolean quote) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/TypeListItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/TypeListItem.java index 8e311487..bdb6a4de 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/TypeListItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/TypeListItem.java @@ -89,9 +89,9 @@ public class TypeListItem { StringBuilder sb = new StringBuilder(); - int size = dexFile.getBuffer().readSmallUint(typeListOffset); + int size = dexFile.getDataBuffer().readSmallUint(typeListOffset); for (int i=0; i 0) { - final int parameterCount = dexFile.getBuffer().readSmallUint(parametersOffset + TypeListItem.SIZE_OFFSET); + final int parameterCount = dexFile.getDataBuffer().readSmallUint( + parametersOffset + TypeListItem.SIZE_OFFSET); final int paramListStart = parametersOffset + TypeListItem.LIST_OFFSET; return new FixedSizeList() { @Nonnull @Override public String readItem(final int index) { - return dexFile.getTypeSection().get(dexFile.getBuffer().readUshort(paramListStart + 2*index)); + return dexFile.getTypeSection().get(dexFile.getDataBuffer().readUshort(paramListStart + 2*index)); } @Override public int size() { return parameterCount; } }; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedMethodReference.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedMethodReference.java index 59171d6d..28427ed0 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedMethodReference.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedMethodReference.java @@ -73,13 +73,14 @@ public class DexBackedMethodReference extends BaseMethodReference { final int parametersOffset = dexFile.getBuffer().readSmallUint( protoIdItemOffset + ProtoIdItem.PARAMETERS_OFFSET); if (parametersOffset > 0) { - final int parameterCount = dexFile.getBuffer().readSmallUint(parametersOffset + TypeListItem.SIZE_OFFSET); + final int parameterCount = + dexFile.getDataBuffer().readSmallUint(parametersOffset + TypeListItem.SIZE_OFFSET); final int paramListStart = parametersOffset + TypeListItem.LIST_OFFSET; return new FixedSizeList() { @Nonnull @Override public String readItem(final int index) { - return dexFile.getTypeSection().get(dexFile.getBuffer().readUshort(paramListStart + 2*index)); + return dexFile.getTypeSection().get(dexFile.getDataBuffer().readUshort(paramListStart + 2*index)); } @Override public int size() { return parameterCount; } }; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedStringReference.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedStringReference.java index 44557201..0e30a889 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedStringReference.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/reference/DexBackedStringReference.java @@ -65,7 +65,7 @@ public class DexBackedStringReference extends BaseStringReference { //add the string data length: int stringOffset = dexFile.getStringSection().getOffset(stringIndex); int stringDataOffset = dexFile.getBuffer().readSmallUint(stringOffset); - DexReader reader = dexFile.getBuffer().readerAt(stringDataOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(stringDataOffset); size += reader.peekSmallUleb128Size(); int utf16Length = reader.readSmallUleb128(); //and string data itself: diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/AnnotationsDirectory.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/AnnotationsDirectory.java index b3ae83ae..3f0faf27 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/AnnotationsDirectory.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/AnnotationsDirectory.java @@ -99,12 +99,12 @@ public abstract class AnnotationsDirectory { public static Set getAnnotations(@Nonnull final DexBackedDexFile dexFile, final int annotationSetOffset) { if (annotationSetOffset != 0) { - final int size = dexFile.getBuffer().readSmallUint(annotationSetOffset); + final int size = dexFile.getDataBuffer().readSmallUint(annotationSetOffset); return new FixedSizeSet() { @Nonnull @Override public DexBackedAnnotation readItem(int index) { - int annotationOffset = dexFile.getBuffer().readSmallUint(annotationSetOffset + 4 + (4*index)); + int annotationOffset = dexFile.getDataBuffer().readSmallUint(annotationSetOffset + 4 + (4*index)); return new DexBackedAnnotation(dexFile, annotationOffset); } @@ -119,13 +119,13 @@ public abstract class AnnotationsDirectory { public static List> getParameterAnnotations( @Nonnull final DexBackedDexFile dexFile, final int annotationSetListOffset) { if (annotationSetListOffset > 0) { - final int size = dexFile.getBuffer().readSmallUint(annotationSetListOffset); + final int size = dexFile.getDataBuffer().readSmallUint(annotationSetListOffset); return new FixedSizeList>() { @Nonnull @Override public Set readItem(int index) { - int annotationSetOffset = dexFile.getBuffer().readSmallUint( + int annotationSetOffset = dexFile.getDataBuffer().readSmallUint( annotationSetListOffset + 4 + index * 4); return getAnnotations(dexFile, annotationSetOffset); } @@ -157,20 +157,20 @@ public abstract class AnnotationsDirectory { } public int getFieldAnnotationCount() { - return dexFile.getBuffer().readSmallUint(directoryOffset + FIELD_COUNT_OFFSET); + return dexFile.getDataBuffer().readSmallUint(directoryOffset + FIELD_COUNT_OFFSET); } public int getMethodAnnotationCount() { - return dexFile.getBuffer().readSmallUint(directoryOffset + METHOD_COUNT_OFFSET); + return dexFile.getDataBuffer().readSmallUint(directoryOffset + METHOD_COUNT_OFFSET); } public int getParameterAnnotationCount() { - return dexFile.getBuffer().readSmallUint(directoryOffset + PARAMETER_COUNT_OFFSET); + return dexFile.getDataBuffer().readSmallUint(directoryOffset + PARAMETER_COUNT_OFFSET); } @Nonnull public Set getClassAnnotations() { - return getAnnotations(dexFile, dexFile.getBuffer().readSmallUint(directoryOffset)); + return getAnnotations(dexFile, dexFile.getDataBuffer().readSmallUint(directoryOffset)); } @Nonnull @@ -217,24 +217,24 @@ public abstract class AnnotationsDirectory { public AnnotationIteratorImpl(int startOffset, int size) { this.startOffset = startOffset; this.size = size; - this.currentItemIndex = dexFile.getBuffer().readSmallUint(startOffset); + this.currentItemIndex = dexFile.getDataBuffer().readSmallUint(startOffset); this.currentIndex = 0; } public int seekTo(int itemIndex) { while (currentItemIndex < itemIndex && (currentIndex+1) < size) { currentIndex++; - currentItemIndex = dexFile.getBuffer().readSmallUint(startOffset + (currentIndex*8)); + currentItemIndex = dexFile.getDataBuffer().readSmallUint(startOffset + (currentIndex*8)); } if (currentItemIndex == itemIndex) { - return dexFile.getBuffer().readSmallUint(startOffset + (currentIndex*8)+4); + return dexFile.getDataBuffer().readSmallUint(startOffset + (currentIndex*8)+4); } return 0; } public void reset() { - this.currentItemIndex = dexFile.getBuffer().readSmallUint(startOffset); + this.currentItemIndex = dexFile.getDataBuffer().readSmallUint(startOffset); this.currentIndex = 0; } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java index 168e1d52..cb59f68d 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java @@ -114,7 +114,7 @@ public abstract class DebugInfo implements Iterable { @Nonnull @Override public Iterator iterator() { - DexReader reader = dexFile.getBuffer().readerAt(debugInfoOffset); + DexReader reader = dexFile.getDataBuffer().readerAt(debugInfoOffset); final int lineNumberStart = reader.readBigUleb128(); int registerCount = methodImpl.getRegisterCount(); @@ -166,7 +166,7 @@ public abstract class DebugInfo implements Iterable { } } - return new VariableSizeLookaheadIterator(dexFile, reader.getOffset()) { + return new VariableSizeLookaheadIterator(dexFile.getDataBuffer(), reader.getOffset()) { private int codeAddress = 0; private int lineNumber = lineNumberStart; @@ -282,7 +282,7 @@ public abstract class DebugInfo implements Iterable { @Override public VariableSizeIterator getParameterNames(@Nullable DexReader reader) { if (reader == null) { - reader = dexFile.getBuffer().readerAt(debugInfoOffset); + reader = dexFile.getDataBuffer().readerAt(debugInfoOffset); reader.skipUleb128(); } //TODO: make sure dalvik doesn't allow more parameter names than we have parameters diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/EncodedArrayItemIterator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/EncodedArrayItemIterator.java index f3cdf401..fbb29e63 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/EncodedArrayItemIterator.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/EncodedArrayItemIterator.java @@ -68,7 +68,7 @@ public abstract class EncodedArrayItemIterator { public EncodedArrayItemIteratorImpl(@Nonnull DexBackedDexFile dexFile, int offset) { this.dexFile = dexFile; - this.reader = dexFile.getBuffer().readerAt(offset); + this.reader = dexFile.getDataBuffer().readerAt(offset); this.size = reader.readSmallUleb128(); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeCollection.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeCollection.java index a784917c..50eae98b 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeCollection.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeCollection.java @@ -31,19 +31,19 @@ package org.jf.dexlib2.dexbacked.util; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; import java.util.AbstractCollection; public abstract class VariableSizeCollection extends AbstractCollection { - @Nonnull private final DexBackedDexFile dexFile; + @Nonnull private final DexBuffer buffer; private final int offset; private final int size; - public VariableSizeCollection(@Nonnull DexBackedDexFile dexFile, int offset, int size) { - this.dexFile = dexFile; + public VariableSizeCollection(@Nonnull DexBuffer buffer, int offset, int size) { + this.buffer = buffer; this.offset = offset; this.size = size; } @@ -53,7 +53,7 @@ public abstract class VariableSizeCollection extends AbstractCollection { @Override @Nonnull public VariableSizeIterator iterator() { - return new VariableSizeIterator(dexFile, offset, size) { + return new VariableSizeIterator(buffer, offset, size) { @Override protected T readNextItem(@Nonnull DexReader reader, int index) { return VariableSizeCollection.this.readNextItem(reader, index); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeIterator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeIterator.java index b47349e6..b063b032 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeIterator.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeIterator.java @@ -31,7 +31,7 @@ package org.jf.dexlib2.dexbacked.util; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; @@ -44,8 +44,8 @@ public abstract class VariableSizeIterator implements Iterator { private int index; - protected VariableSizeIterator(@Nonnull DexBackedDexFile dexFile, int offset, int size) { - this.reader = dexFile.getBuffer().readerAt(offset); + protected VariableSizeIterator(@Nonnull DexBuffer buffer, int offset, int size) { + this.reader = buffer.readerAt(offset); this.size = size; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeList.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeList.java index ec219ad5..9eecf24f 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeList.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeList.java @@ -31,19 +31,19 @@ package org.jf.dexlib2.dexbacked.util; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; import java.util.AbstractSequentialList; public abstract class VariableSizeList extends AbstractSequentialList { - @Nonnull private final DexBackedDexFile dexFile; + @Nonnull private final DexBuffer buffer; private final int offset; private final int size; - public VariableSizeList(@Nonnull DexBackedDexFile dexFile, int offset, int size) { - this.dexFile = dexFile; + public VariableSizeList(@Nonnull DexBuffer buffer, int offset, int size) { + this.buffer = buffer; this.offset = offset; this.size = size; } @@ -61,7 +61,7 @@ public abstract class VariableSizeList extends AbstractSequentialList { @Nonnull @Override public VariableSizeListIterator listIterator(int index) { - VariableSizeListIterator iterator = new VariableSizeListIterator(dexFile, offset, size) { + VariableSizeListIterator iterator = new VariableSizeListIterator(buffer, offset, size) { @Override protected T readNextItem(@Nonnull DexReader reader, int index) { return VariableSizeList.this.readNextItem(reader, index); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeListIterator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeListIterator.java index 1656fe87..a56d3718 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeListIterator.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeListIterator.java @@ -31,7 +31,7 @@ package org.jf.dexlib2.dexbacked.util; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; @@ -45,8 +45,8 @@ public abstract class VariableSizeListIterator implements ListIterator { private int index; - protected VariableSizeListIterator(@Nonnull DexBackedDexFile dexFile, int offset, int size) { - this.reader = dexFile.getBuffer().readerAt(offset); + protected VariableSizeListIterator(@Nonnull DexBuffer buffer, int offset, int size) { + this.reader = buffer.readerAt(offset); this.startOffset = offset; this.size = size; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java index 942f2f72..9b7e302a 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java @@ -32,7 +32,7 @@ package org.jf.dexlib2.dexbacked.util; import com.google.common.collect.AbstractIterator; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; @@ -42,8 +42,8 @@ import java.util.Iterator; public abstract class VariableSizeLookaheadIterator extends AbstractIterator implements Iterator { @Nonnull private final DexReader reader; - protected VariableSizeLookaheadIterator(@Nonnull DexBackedDexFile dexFile, int offset) { - this.reader = dexFile.getBuffer().readerAt(offset); + protected VariableSizeLookaheadIterator(@Nonnull DexBuffer buffer, int offset) { + this.reader = buffer.readerAt(offset); } /** diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeSet.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeSet.java index 9ea726a8..dd1c64b5 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeSet.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeSet.java @@ -31,19 +31,19 @@ package org.jf.dexlib2.dexbacked.util; -import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.dexbacked.DexBuffer; import org.jf.dexlib2.dexbacked.DexReader; import javax.annotation.Nonnull; import java.util.AbstractSet; public abstract class VariableSizeSet extends AbstractSet { - @Nonnull private final DexBackedDexFile dexFile; + @Nonnull private final DexBuffer buffer; private final int offset; private final int size; - public VariableSizeSet(@Nonnull DexBackedDexFile dexFile, int offset, int size) { - this.dexFile = dexFile; + public VariableSizeSet(@Nonnull DexBuffer buffer, int offset, int size) { + this.buffer = buffer; this.offset = offset; this.size = size; } @@ -53,7 +53,7 @@ public abstract class VariableSizeSet extends AbstractSet { @Override @Nonnull public VariableSizeIterator iterator() { - return new VariableSizeIterator(dexFile, offset, size) { + return new VariableSizeIterator(buffer, offset, size) { @Override protected T readNextItem(@Nonnull DexReader reader, int index) { return VariableSizeSet.this.readNextItem(reader, index); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedAnnotationEncodedValue.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedAnnotationEncodedValue.java index d4121f90..baed27b3 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedAnnotationEncodedValue.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedAnnotationEncodedValue.java @@ -73,7 +73,7 @@ public class DexBackedAnnotationEncodedValue extends BaseAnnotationEncodedValue @Nonnull @Override public Set getElements() { - return new VariableSizeSet(dexFile, elementsOffset, elementCount) { + return new VariableSizeSet(dexFile.getDataBuffer(), elementsOffset, elementCount) { @Nonnull @Override protected DexBackedAnnotationElement readNextItem(@Nonnull DexReader dexReader, int index) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedArrayEncodedValue.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedArrayEncodedValue.java index c61aae4a..428233e8 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedArrayEncodedValue.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/value/DexBackedArrayEncodedValue.java @@ -67,7 +67,7 @@ public class DexBackedArrayEncodedValue extends BaseArrayEncodedValue implements @Nonnull @Override public List getValue() { - return new VariableSizeList(dexFile, encodedArrayOffset, elementCount) { + return new VariableSizeList(dexFile.getDataBuffer(), encodedArrayOffset, elementCount) { @Nonnull @Override protected EncodedValue readNextItem(@Nonnull DexReader dexReader, int index) {