From 0da75f71eba93e3e8e0d089591a7e2367b8db7ec Mon Sep 17 00:00:00 2001 From: "JesusFreke@JesusFreke.com" Date: Wed, 26 Aug 2009 04:42:18 +0000 Subject: [PATCH] Initialize the offset of ClassDefItems to -1 before placing them git-svn-id: https://smali.googlecode.com/svn/trunk@423 55b6fa8a-2a1e-11de-a435-ffa8d773f76a --- dexlib/src/main/java/org/jf/dexlib/ClassDefItem.java | 6 ++++++ dexlib/src/main/java/org/jf/dexlib/Item.java | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) 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