From 06bc17a75e0e2d100d60c8f7f08de21630fa9606 Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Tue, 4 Sep 2012 21:04:13 -0700 Subject: [PATCH] Correctly handle duplicate (except case) reserved file names on windows --- .../org/jf/util/ClassFileNameHandler.java | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/util/src/main/java/org/jf/util/ClassFileNameHandler.java b/util/src/main/java/org/jf/util/ClassFileNameHandler.java index 7a748db1..124cd026 100644 --- a/util/src/main/java/org/jf/util/ClassFileNameHandler.java +++ b/util/src/main/java/org/jf/util/ClassFileNameHandler.java @@ -58,7 +58,6 @@ public class ClassFileNameHandler { throw new RuntimeException("Not a valid dalvik class name"); } - String blah; int packageElementCount = 1; for (int i=1; i= className.length()-1) { throw new RuntimeException("Not a valid dalvik class name"); } - packageElements[elementIndex] = className.substring(elementStart, className.length()-1); + + packageElement = className.substring(elementStart, className.length()-1); + if (modifyWindowsReservedFilenames && isReservedFileName(packageElement)) { + packageElement += "#"; + } + + packageElements[elementIndex] = packageElement; return top.addUniqueChild(packageElements, 0); } @@ -170,15 +182,9 @@ public class ClassFileNameHandler { if (pathElementsIndex == pathElements.length - 1) { elementName = pathElements[pathElementsIndex]; - if (modifyWindowsReservedFilenames && isReservedFileName(elementName)) { - elementName += "#"; - } elementName += fileExtension; } else { elementName = pathElements[pathElementsIndex]; - if (modifyWindowsReservedFilenames && isReservedFileName(elementName)) { - elementName += "#"; - } } elementNameLower = elementName.toLowerCase();