diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2022-03-31 00:50:51 +0200 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2022-03-31 00:52:40 +0200 |
commit | 08716954031eb0329fbd1ad2cd3fa593d3a046ab (patch) | |
tree | 48683dcf0639fbe7b84e00ea02dacaa4de9fe577 /src/Common/zlib/deflate.h | |
parent | 2be0b2e88ffebf9b63dcda4048ab0a24cd6ec131 (diff) | |
download | VeraCrypt-08716954031eb0329fbd1ad2cd3fa593d3a046ab.tar.gz VeraCrypt-08716954031eb0329fbd1ad2cd3fa593d3a046ab.zip |
Update zlib to version 1.2.12
Diffstat (limited to 'src/Common/zlib/deflate.h')
-rw-r--r-- | src/Common/zlib/deflate.h | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/src/Common/zlib/deflate.h b/src/Common/zlib/deflate.h index 23ecdd31..17c22611 100644 --- a/src/Common/zlib/deflate.h +++ b/src/Common/zlib/deflate.h @@ -1,6 +1,6 @@ /* deflate.h -- internal compression state - * Copyright (C) 1995-2016 Jean-loup Gailly + * Copyright (C) 1995-2018 Jean-loup Gailly * For conditions of distribution and use, see copyright notice in zlib.h */ /* WARNING: this file should *not* be used by applications. It is @@ -216,9 +216,9 @@ typedef struct internal_state { uch depth[2*L_CODES+1]; /* Depth of each subtree used as tie breaker for trees of equal frequency */ - uchf *l_buf; /* buffer for literals or lengths */ + uchf *sym_buf; /* buffer for distances and literals/lengths */ uInt lit_bufsize; /* Size of match buffer for literals/lengths. There are 4 reasons for * limiting lit_bufsize to 64K: @@ -238,15 +238,10 @@ typedef struct internal_state { * trees more frequently. * - I can't count above 4 */ - uInt last_lit; /* running index in l_buf */ - - ushf *d_buf; - /* Buffer for distances. To simplify the code, d_buf and l_buf have - * the same number of elements. To use different lengths, an extra flag - * array would be necessary. - */ + uInt sym_next; /* running index in sym_buf */ + uInt sym_end; /* symbol table full when sym_next reaches this */ ulg opt_len; /* bit length of current block with optimal trees */ ulg static_len; /* bit length of current block with static trees */ uInt matches; /* number of string matches in current block */ @@ -324,22 +319,24 @@ void ZLIB_INTERNAL _tr_stored_block OF((deflate_state *s, charf *buf, #endif # define _tr_tally_lit(s, c, flush) \ { uch cc = (c); \ - s->d_buf[s->last_lit] = 0; \ - s->l_buf[s->last_lit++] = cc; \ + s->sym_buf[s->sym_next++] = 0; \ + s->sym_buf[s->sym_next++] = 0; \ + s->sym_buf[s->sym_next++] = cc; \ s->dyn_ltree[cc].Freq++; \ - flush = (s->last_lit == s->lit_bufsize-1); \ + flush = (s->sym_next == s->sym_end); \ } # define _tr_tally_dist(s, distance, length, flush) \ { uch len = (uch)(length); \ ush dist = (ush)(distance); \ - s->d_buf[s->last_lit] = dist; \ - s->l_buf[s->last_lit++] = len; \ + s->sym_buf[s->sym_next++] = dist; \ + s->sym_buf[s->sym_next++] = dist >> 8; \ + s->sym_buf[s->sym_next++] = len; \ dist--; \ s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \ s->dyn_dtree[d_code(dist)].Freq++; \ - flush = (s->last_lit == s->lit_bufsize-1); \ + flush = (s->sym_next == s->sym_end); \ } #else # define _tr_tally_lit(s, c, flush) flush = _tr_tally(s, 0, c) # define _tr_tally_dist(s, distance, length, flush) \ |