MCPcopy Create free account
hub / github.com/TruthHun/BookStack / deflateInit2

Function deflateInit2

static/word2md/mammoth.browser.js:19550–19626  ·  view source on GitHub ↗
(strm, level, method, windowBits, memLevel, strategy)

Source from the content-addressed store, hash-verified

19548
19549
19550function deflateInit2(strm, level, method, windowBits, memLevel, strategy) {
19551 if (!strm) { // === Z_NULL
19552 return Z_STREAM_ERROR;
19553 }
19554 var wrap = 1;
19555
19556 if (level === Z_DEFAULT_COMPRESSION) {
19557 level = 6;
19558 }
19559
19560 if (windowBits < 0) { /* suppress zlib wrapper */
19561 wrap = 0;
19562 windowBits = -windowBits;
19563 }
19564
19565 else if (windowBits > 15) {
19566 wrap = 2; /* write gzip wrapper instead */
19567 windowBits -= 16;
19568 }
19569
19570
19571 if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED ||
19572 windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||
19573 strategy < 0 || strategy > Z_FIXED) {
19574 return err(strm, Z_STREAM_ERROR);
19575 }
19576
19577
19578 if (windowBits === 8) {
19579 windowBits = 9;
19580 }
19581 /* until 256-byte window bug fixed */
19582
19583 var s = new DeflateState();
19584
19585 strm.state = s;
19586 s.strm = strm;
19587
19588 s.wrap = wrap;
19589 s.gzhead = null;
19590 s.w_bits = windowBits;
19591 s.w_size = 1 << s.w_bits;
19592 s.w_mask = s.w_size - 1;
19593
19594 s.hash_bits = memLevel + 7;
19595 s.hash_size = 1 << s.hash_bits;
19596 s.hash_mask = s.hash_size - 1;
19597 s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);
19598
19599 s.window = new utils.Buf8(s.w_size * 2);
19600 s.head = new utils.Buf16(s.hash_size);
19601 s.prev = new utils.Buf16(s.w_size);
19602
19603 // Don't need mem init magic for JS.
19604 //s.high_water = 0; /* nothing written to s->window yet */
19605
19606 s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */
19607

Callers 1

deflateInitFunction · 0.70

Calls 2

errFunction · 0.70
deflateResetFunction · 0.70

Tested by

no test coverage detected