fix hashing errors in large files

pull/4/head
Zlatin Balevsky 2019-06-05 00:34:38 +01:00
parent 9df28552ad
commit 1eb930435b
1 changed files with 2 additions and 2 deletions

View File

@ -52,11 +52,11 @@ class FileHasher {
try {
MappedByteBuffer buf
for (int i = 0; i < numPieces - 1; i++) {
buf = raf.getChannel().map(MapMode.READ_ONLY, size * i, size)
buf = raf.getChannel().map(MapMode.READ_ONLY, ((long)size) * i, size)
digest.update buf
output.write(digest.digest(), 0, 32)
}
def lastPieceLength = length - (numPieces - 1) * size
def lastPieceLength = length - (numPieces - 1) * ((long)size)
buf = raf.getChannel().map(MapMode.READ_ONLY, length - lastPieceLength, lastPieceLength)
digest.update buf
output.write(digest.digest(), 0, 32)