From 0044afa4c33b07f508b12d88160be9358361fec8 Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Fri, 23 Mar 2012 01:53:16 -0700 Subject: [PATCH] Don't let later entries in the classpath override classes from earlier entries --- .../src/main/java/org/jf/dexlib/Code/Analysis/ClassPath.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dexlib/src/main/java/org/jf/dexlib/Code/Analysis/ClassPath.java b/dexlib/src/main/java/org/jf/dexlib/Code/Analysis/ClassPath.java index d32be0f3..e6b971d0 100644 --- a/dexlib/src/main/java/org/jf/dexlib/Code/Analysis/ClassPath.java +++ b/dexlib/src/main/java/org/jf/dexlib/Code/Analysis/ClassPath.java @@ -243,7 +243,9 @@ public class ClassPath { //TODO: need to check if the class already exists. (and if so, what to do about it?) TempClassInfo tempClassInfo = new TempClassInfo(dexFilePath, classDefItem); - tempClasses.put(tempClassInfo.classType, tempClassInfo); + if (!tempClasses.containsKey(tempClassInfo.classType)) { + tempClasses.put(tempClassInfo.classType, tempClassInfo); + } } catch (Exception ex) { throw ExceptionWithContext.withContext(ex, String.format("Error while loading class %s", classDefItem.getClassType().getTypeDescriptor()));