in src/utils.js [278:291]
_maybeGrow(n) {
const curSize = this._buffer.byteLength;
const newPos = this._pos + n;
const shortfall = newPos - curSize;
if (shortfall > 0) {
// Classic grow-by-doubling, up to 4kB max increment.
// This formula was not arrived at by any particular science.
const incr = Math.min(curSize, 4 * 1024);
const newbuf = new Uint8Array(curSize + Math.ceil(shortfall / incr) * incr);
newbuf.set(this._buffer, 0);
this._buffer = newbuf;
this._dataview = new DataView(newbuf.buffer, newbuf.byteOffset, newbuf.byteLength);
}
}