in themes/docsy/static/js/deflate.js [794:833]
function zip_qcopy(buff, off, buff_size) {
var n, i, j;
n = 0;
while (zip_qhead != null && n < buff_size) {
i = buff_size - n;
if (i > zip_qhead.len)
i = zip_qhead.len;
// System.arraycopy(qhead.ptr, qhead.off, buff, off + n, i);
for (j = 0; j < i; j++)
buff[off + n + j] = zip_qhead.ptr[zip_qhead.off + j];
zip_qhead.off += i;
zip_qhead.len -= i;
n += i;
if (zip_qhead.len == 0) {
var p;
p = zip_qhead;
zip_qhead = zip_qhead.next;
zip_reuse_queue(p);
}
}
if (n == buff_size)
return n;
if (zip_outoff < zip_outcnt) {
i = buff_size - n;
if (i > zip_outcnt - zip_outoff)
i = zip_outcnt - zip_outoff;
// System.arraycopy(outbuf, outoff, buff, off + n, i);
for (j = 0; j < i; j++)
buff[off + n + j] = zip_outbuf[zip_outoff + j];
zip_outoff += i;
n += i;
if (zip_outcnt == zip_outoff)
zip_outcnt = zip_outoff = 0;
}
return n;
}