From 62d934dd8e89cc751c90e0c6a9ec36ea606cfbee Mon Sep 17 00:00:00 2001 From: kapodamy <kapo.damy@yahoo.com.ar> Date: Wed, 1 Apr 2020 15:11:57 -0300 Subject: [PATCH] fix integer overflows * available() method in ChunkFileInputStream.java * free "ahead space" calculation in CircularFileWriter.java --- app/src/main/java/us/shandian/giga/io/ChunkFileInputStream.java | 2 +- app/src/main/java/us/shandian/giga/io/CircularFileWriter.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/us/shandian/giga/io/ChunkFileInputStream.java b/app/src/main/java/us/shandian/giga/io/ChunkFileInputStream.java index 98015e37e..f7edf3975 100644 --- a/app/src/main/java/us/shandian/giga/io/ChunkFileInputStream.java +++ b/app/src/main/java/us/shandian/giga/io/ChunkFileInputStream.java @@ -104,7 +104,7 @@ public class ChunkFileInputStream extends SharpStream { @Override public long available() { - return (int) (length - position); + return length - position; } @SuppressWarnings("EmptyCatchBlock") diff --git a/app/src/main/java/us/shandian/giga/io/CircularFileWriter.java b/app/src/main/java/us/shandian/giga/io/CircularFileWriter.java index 102580570..d3dde7835 100644 --- a/app/src/main/java/us/shandian/giga/io/CircularFileWriter.java +++ b/app/src/main/java/us/shandian/giga/io/CircularFileWriter.java @@ -221,7 +221,7 @@ public class CircularFileWriter extends SharpStream { available = out.length - offsetOut; } - int length = Math.min(len, (int) available); + int length = Math.min(len, (int) Math.min(Integer.MAX_VALUE, available)); out.write(b, off, length); len -= length;