Replace loop with TypedArray.prototype.set in the DecryptStream.readBlock method

There's no reason to use a manual loop, when a native method exists.
This commit is contained in:
Jonas Jenwald 2022-10-06 14:43:24 +02:00
parent 7d5f7a517c
commit 6877d8b9e2

View File

@ -46,13 +46,11 @@ class DecryptStream extends DecodeStream {
const decrypt = this.decrypt; const decrypt = this.decrypt;
chunk = decrypt(chunk, !hasMoreData); chunk = decrypt(chunk, !hasMoreData);
let bufferLength = this.bufferLength; const bufferLength = this.bufferLength,
const n = chunk.length, newLength = bufferLength + chunk.length,
buffer = this.ensureBuffer(bufferLength + n); buffer = this.ensureBuffer(newLength);
for (let i = 0; i < n; i++) { buffer.set(chunk, bufferLength);
buffer[bufferLength++] = chunk[i]; this.bufferLength = newLength;
}
this.bufferLength = bufferLength;
} }
} }