diff options
4 files changed, 6 insertions, 6 deletions
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java index d58b2b68..b69995df 100644 --- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java +++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java @@ -501,7 +501,7 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem { writer.write("Float.POSITIVE_INFINITY"); else if (fval == Float.NEGATIVE_INFINITY) writer.write("Float.NEGATIVE_INFINITY"); - else if (fval == Float.NaN) + else if (Float.isNaN(fval)) writer.write("Float.NaN"); else if (fval == Float.MAX_VALUE) writer.write("Float.MAX_VALUE"); @@ -528,7 +528,7 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem { writer.write("Double.POSITIVE_INFINITY"); else if (dval == Double.NEGATIVE_INFINITY) writer.write("Double.NEGATIVE_INFINITY"); - else if (dval == Double.NaN) + else if (Double.isNaN(dval)) writer.write("Double.NaN"); else if (dval == Double.MAX_VALUE) writer.write("Double.MAX_VALUE"); diff --git a/build.gradle b/build.gradle index 08da9c85..360e3db0 100644 --- a/build.gradle +++ b/build.gradle @@ -31,7 +31,7 @@ apply plugin: 'idea' -version = '2.2.1' +version = '2.2.2' def jcommanderVersion = '' if (!('release' in gradle.startParameter.taskNames)) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/DebugInfoItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/DebugInfoItem.java index 1ddd4ac0..32ee4cc9 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/DebugInfoItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/DebugInfoItem.java @@ -52,8 +52,8 @@ public class DebugInfoItem { public void annotateItem(@Nonnull AnnotatedBytes out, int itemIndex, @Nullable String itemIdentity) { DexReader reader = dexFile.readerAt(out.getCursor()); - int lineStart = reader.readSmallUleb128(); - out.annotateTo(reader.getOffset(), "line_start = %d", lineStart); + int lineStart = reader.readBigUleb128(); + out.annotateTo(reader.getOffset(), "line_start = %d", lineStart & 0xFFFFFFFFL); int parametersSize = reader.readSmallUleb128(); out.annotateTo(reader.getOffset(), "parameters_size = %d", parametersSize); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexDataWriter.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexDataWriter.java index 0102b755..f33a3be2 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexDataWriter.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexDataWriter.java @@ -127,7 +127,7 @@ public class DexDataWriter extends BufferedOutputStream { } public static void writeUleb128(OutputStream out, int value) throws IOException { - while (value > 0x7f) { + while ((value & 0xffffffffL) > 0x7f) { out.write((value & 0x7f) | 0x80); value >>>= 7; } |