diff --git a/dexlib/src/main/java/org/jf/dexlib/Code/Format/ArrayDataPseudoInstruction.java b/dexlib/src/main/java/org/jf/dexlib/Code/Format/ArrayDataPseudoInstruction.java index f26f0aa7..84e45405 100644 --- a/dexlib/src/main/java/org/jf/dexlib/Code/Format/ArrayDataPseudoInstruction.java +++ b/dexlib/src/main/java/org/jf/dexlib/Code/Format/ArrayDataPseudoInstruction.java @@ -62,6 +62,10 @@ public class ArrayDataPseudoInstruction extends Instruction { out.writeShort(elementWidth); out.writeInt(elementCount); out.write(encodedValues); + if ((encodedValues.length % 2) != 0) { + //must write out an even number of bytes + out.writeByte(0); + } } public ArrayDataPseudoInstruction(byte[] buffer, int bufferIndex) {