From a1438645c54b0be4598bebc7eb9c730d1acd9ee1 Mon Sep 17 00:00:00 2001 From: Lanchon Date: Sun, 19 Jan 2020 16:33:14 -0300 Subject: [PATCH] Fix inspections --- .idea/inspectionProfiles/Project_Default.xml | 6 ++++++ .idea/misc.xml | 20 +++++++++++++++++++ build.gradle | 2 +- .../multidexlib2/DexFileNameComparator.java | 2 +- src/main/java/lanchon/multidexlib2/DexIO.java | 7 ++++++- .../MultiDexContainerBackedDexFile.java | 2 ++ .../java/lanchon/multidexlib2/MultiDexIO.java | 1 + .../java/lanchon/multidexlib2/RawDexIO.java | 1 + 8 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 .idea/inspectionProfiles/Project_Default.xml diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..81a1664 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index d5d35ec..5827753 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,5 +1,25 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/build.gradle b/build.gradle index 2a5c5d0..467b362 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ ext.mainArtifact = 'multidexlib2' ext.artifactName = mainArtifact sourceCompatibility = '1.7' -def jdk = findProperty('JDK7_HOME') ?: '/usr/lib/jvm/java-7-openjdk-amd64' +def jdk = findProperty('JDK7_HOME') as String ?: '/usr/lib/jvm/java-7-openjdk-amd64' def jdk_rt = new File(jdk, 'jre/lib/rt.jar') if (jdk_rt.exists()) compileJava.options.bootstrapClasspath = files(jdk_rt) diff --git a/src/main/java/lanchon/multidexlib2/DexFileNameComparator.java b/src/main/java/lanchon/multidexlib2/DexFileNameComparator.java index 76cff22..12ccf14 100644 --- a/src/main/java/lanchon/multidexlib2/DexFileNameComparator.java +++ b/src/main/java/lanchon/multidexlib2/DexFileNameComparator.java @@ -28,7 +28,7 @@ public class DexFileNameComparator implements Comparator { boolean rv = (ri >= 0); if (lv != rv) return lv ? -1 : 1; if (!lv) return l.compareTo(r); - return li < ri ? -1 : (li > ri ? 1 : 0); + return Integer.compare(li, ri); } public DexFileNamer getNamer() { diff --git a/src/main/java/lanchon/multidexlib2/DexIO.java b/src/main/java/lanchon/multidexlib2/DexIO.java index 8c115f3..65edab4 100644 --- a/src/main/java/lanchon/multidexlib2/DexIO.java +++ b/src/main/java/lanchon/multidexlib2/DexIO.java @@ -74,6 +74,7 @@ public class DexIO { minimalMainDex = false; } Object lock = new Object(); + //noinspection SynchronizationOnLocalVariableOrMethodParameter synchronized (lock) { // avoid multiple synchronizations in single-threaded mode writeMultiDexDirectoryCommon(directory, nameIterator, Iterators.peekingIterator(classes.iterator()), minMainDexClassCount, minimalMainDex, dexFile.getOpcodes(), maxDexPoolSize, logger, lock); @@ -94,6 +95,7 @@ public class DexIO { final BatchedIterator batchedIterator = new BatchedIterator<>(classIterator, lock, PER_THREAD_BATCH_SIZE); if (i != 0 && !batchedIterator.hasNext()) break; + //noinspection Convert2Lambda callables.add(new Callable() { @Override public Void call() throws IOException { @@ -148,11 +150,14 @@ public class DexIO { fileClassCount++; } File file; + //noinspection SynchronizationOnLocalVariableOrMethodParameter synchronized (lock) { String name = nameIterator.next(); file = new File(directory, name); if (logger != null) logger.log(directory, name, fileClassCount); - if (classIterator instanceof BatchedIterator) ((BatchedIterator) classIterator).preloadBatch(); + if (classIterator instanceof BatchedIterator) { + ((BatchedIterator) classIterator).preloadBatch(); + } } dexPool.writeTo(new FileDataStore(file)); minMainDexClassCount = 0; diff --git a/src/main/java/lanchon/multidexlib2/MultiDexContainerBackedDexFile.java b/src/main/java/lanchon/multidexlib2/MultiDexContainerBackedDexFile.java index 4a172d0..2ac74a4 100644 --- a/src/main/java/lanchon/multidexlib2/MultiDexContainerBackedDexFile.java +++ b/src/main/java/lanchon/multidexlib2/MultiDexContainerBackedDexFile.java @@ -30,6 +30,7 @@ public class MultiDexContainerBackedDexFile implements DexFil List entryNames = container.getDexEntryNames(); if (entryNames.size() == 1) { String entryName = entryNames.get(0); + //noinspection ConstantConditions T entryDex = container.getEntry(entryName).getDexFile(); classes = Collections.unmodifiableSet(entryDex.getClasses()); opcodes = entryDex.getOpcodes(); @@ -37,6 +38,7 @@ public class MultiDexContainerBackedDexFile implements DexFil LinkedHashSet accumulatedClasses = new LinkedHashSet<>(); Opcodes resolvedOpcodes = null; for (String entryName : entryNames) { + //noinspection ConstantConditions T entryDex = container.getEntry(entryName).getDexFile(); for (ClassDef entryClass : entryDex.getClasses()) { if (!accumulatedClasses.add(entryClass)) throw new DuplicateTypeException(entryClass.getType()); diff --git a/src/main/java/lanchon/multidexlib2/MultiDexIO.java b/src/main/java/lanchon/multidexlib2/MultiDexIO.java index 1f5426f..dbfead3 100644 --- a/src/main/java/lanchon/multidexlib2/MultiDexIO.java +++ b/src/main/java/lanchon/multidexlib2/MultiDexIO.java @@ -48,6 +48,7 @@ public class MultiDexIO { MultiDexContainer container = readMultiDexContainer(file, namer, opcodes); if (logger != null) { for (String name : container.getDexEntryNames()) { + //noinspection ConstantConditions logger.log(file, name, container.getEntry(name).getDexFile().getClasses().size()); } } diff --git a/src/main/java/lanchon/multidexlib2/RawDexIO.java b/src/main/java/lanchon/multidexlib2/RawDexIO.java index 5daa470..99247de 100644 --- a/src/main/java/lanchon/multidexlib2/RawDexIO.java +++ b/src/main/java/lanchon/multidexlib2/RawDexIO.java @@ -43,6 +43,7 @@ public class RawDexIO { return readRawDexFile(inputStream, file.length(), opcodes); } */ + //noinspection UnstableApiUsage byte[] buf = Files.toByteArray(file); return readRawDexFile(buf, 0, opcodes); }