Skip to content

Commit 298f356

Browse files
authored
fix: hash faster than callback (#186)
1 parent bf3080e commit 298f356

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,8 @@ async function getPieceList (files, pieceLength, estimatedTorrentLength, opts, c
223223
await new Promise(resolve => {
224224
length += chunk.length
225225
const i = pieceNum
226+
++pieceNum
227+
if (++remainingHashes < MAX_OUTSTANDING_HASHES) resolve()
226228
sha1(chunk, hash => {
227229
pieces[i] = hash
228230
--remainingHashes
@@ -231,10 +233,9 @@ async function getPieceList (files, pieceLength, estimatedTorrentLength, opts, c
231233
resolve()
232234
if (ended && remainingHashes === 0) cb(null, Buffer.from(pieces.join(''), 'hex'), length)
233235
})
234-
++pieceNum
235-
if (++remainingHashes < MAX_OUTSTANDING_HASHES) resolve()
236236
})
237237
}
238+
if (remainingHashes === 0) return cb(null, Buffer.from(pieces.join(''), 'hex'), length)
238239
ended = true
239240
} catch (err) {
240241
cb(err)

0 commit comments

Comments
 (0)