Merge pull request #4382 from nnethercote/off-by-one

Avoid extra allocations in ensureBuffer() caused by an off-by-one error.
This commit is contained in:
Yury Delendik 2014-03-04 22:27:33 -06:00
commit f46942758f

View File

@ -108,9 +108,15 @@ var DecodeStream = (function DecodeStreamClosure() {
DecodeStream.prototype = {
ensureBuffer: function DecodeStream_ensureBuffer(requested) {
var buffer = this.buffer;
var current = buffer ? buffer.byteLength : 0;
if (requested < current)
return buffer;
var current;
if (buffer) {
current = buffer.byteLength;
if (requested <= current) {
return buffer;
}
} else {
current = 0;
}
var size = 512;
while (size < requested)
size <<= 1;