diff --git a/dexlib/src/main/java/org/jf/dexlib/ClassDefItem.java b/dexlib/src/main/java/org/jf/dexlib/ClassDefItem.java index a838d71f..b15b6663 100644 --- a/dexlib/src/main/java/org/jf/dexlib/ClassDefItem.java +++ b/dexlib/src/main/java/org/jf/dexlib/ClassDefItem.java @@ -268,6 +268,12 @@ public class ClassDefItem extends Item { }); } + //we need to initialize the offset for all the classes to -1, so we can tell which ones + //have been placed + for (ClassDefItem classDefItem: section.items) { + classDefItem.offset = -1; + } + for (ClassDefItem classDefItem: section.items) { placeClass(classDefItem); } diff --git a/dexlib/src/main/java/org/jf/dexlib/Item.java b/dexlib/src/main/java/org/jf/dexlib/Item.java index d6dad14b..abf312e9 100644 --- a/dexlib/src/main/java/org/jf/dexlib/Item.java +++ b/dexlib/src/main/java/org/jf/dexlib/Item.java @@ -36,12 +36,12 @@ public abstract class Item implements Comparable { /** * The offset of this item in the dex file, or -1 if not known */ - private int offset = -1; + protected int offset = -1; /** * The index of this item in the containing section, or -1 if not known */ - private int index = -1; + protected int index = -1; /** * The DexFile that this item is associatedr with