diff --git a/owncloudComLibrary/src/main/java/com/owncloud/android/lib/common/network/ChunkFromFileRequestBody.java b/owncloudComLibrary/src/main/java/com/owncloud/android/lib/common/network/ChunkFromFileRequestBody.java index 40f168ea..a43b2c37 100644 --- a/owncloudComLibrary/src/main/java/com/owncloud/android/lib/common/network/ChunkFromFileRequestBody.java +++ b/owncloudComLibrary/src/main/java/com/owncloud/android/lib/common/network/ChunkFromFileRequestBody.java @@ -86,7 +86,8 @@ public class ChunkFromFileRequestBody extends FileRequestBody { readCount = mChannel.read(mBuffer); - sink.getBuffer().write(mBuffer.array(), 0, readCount); + int bytesToWriteInBuffer = (int) Math.min(readCount, mFile.length() - mTransferred); + sink.getBuffer().write(mBuffer.array(), 0, bytesToWriteInBuffer); sink.flush(); @@ -102,14 +103,12 @@ public class ChunkFromFileRequestBody extends FileRequestBody { } } - Timber.v("Chunk with size " + mChunkSize + " written in request body"); - } catch (Exception exception) { - Timber.e(exception); + Timber.e(exception, "Transferred " + mTransferred + " bytes from a total of " + mFile.length()); } } public void setOffset(long offset) { this.mOffset = offset; } -} \ No newline at end of file +}