|
|
|
@ -36,7 +36,7 @@ |
|
|
|
|
|
|
|
|
|
#include "deflate.h" |
|
|
|
|
|
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
# include <ctype.h> |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -159,11 +159,11 @@ local void copy_block OF((deflate_state *s, charf *buf, unsigned len, |
|
|
|
|
local void gen_trees_header OF((void)); |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#ifndef DEBUG |
|
|
|
|
#ifndef ZLIB_DEBUG |
|
|
|
|
# define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len) |
|
|
|
|
/* Send a code of the given tree. c and tree must not have side effects */ |
|
|
|
|
|
|
|
|
|
#else /* DEBUG */ |
|
|
|
|
#else /* !ZLIB_DEBUG */ |
|
|
|
|
# define send_code(s, c, tree) \ |
|
|
|
|
{ if (z_verbose>2) fprintf(stderr,"\ncd %3d ",(c)); \
|
|
|
|
|
send_bits(s, tree[c].Code, tree[c].Len); } |
|
|
|
@ -182,7 +182,7 @@ local void gen_trees_header OF((void)); |
|
|
|
|
* Send a value on a given number of bits. |
|
|
|
|
* IN assertion: length <= 16 and value fits in length bits. |
|
|
|
|
*/ |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
local void send_bits OF((deflate_state *s, int value, int length)); |
|
|
|
|
|
|
|
|
|
local void send_bits(s, value, length) |
|
|
|
@ -208,7 +208,7 @@ local void send_bits(s, value, length) |
|
|
|
|
s->bi_valid += length; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
#else /* !DEBUG */ |
|
|
|
|
#else /* !ZLIB_DEBUG */ |
|
|
|
|
|
|
|
|
|
#define send_bits(s, value, length) \ |
|
|
|
|
{ int len = length;\
|
|
|
|
@ -223,7 +223,7 @@ local void send_bits(s, value, length) |
|
|
|
|
s->bi_valid += len;\
|
|
|
|
|
}\
|
|
|
|
|
} |
|
|
|
|
#endif /* DEBUG */ |
|
|
|
|
#endif /* ZLIB_DEBUG */ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* the arguments must not have side effects */ |
|
|
|
@ -317,7 +317,7 @@ local void tr_static_init() |
|
|
|
|
* Genererate the file trees.h describing the static trees. |
|
|
|
|
*/ |
|
|
|
|
#ifdef GEN_TREES_H |
|
|
|
|
# ifndef DEBUG |
|
|
|
|
# ifndef ZLIB_DEBUG |
|
|
|
|
# include <stdio.h> |
|
|
|
|
# endif |
|
|
|
|
|
|
|
|
@ -394,7 +394,7 @@ void ZLIB_INTERNAL _tr_init(s) |
|
|
|
|
|
|
|
|
|
s->bi_buf = 0; |
|
|
|
|
s->bi_valid = 0; |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len = 0L; |
|
|
|
|
s->bits_sent = 0L; |
|
|
|
|
#endif |
|
|
|
@ -869,7 +869,7 @@ void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last) |
|
|
|
|
int last; /* one if this is the last block for a file */ |
|
|
|
|
{ |
|
|
|
|
send_bits(s, (STORED_BLOCK<<1)+last, 3); /* send block type */ |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L; |
|
|
|
|
s->compressed_len += (stored_len + 4) << 3; |
|
|
|
|
#endif |
|
|
|
@ -894,7 +894,7 @@ void ZLIB_INTERNAL _tr_align(s) |
|
|
|
|
{ |
|
|
|
|
send_bits(s, STATIC_TREES<<1, 3); |
|
|
|
|
send_code(s, END_BLOCK, static_ltree); |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len += 10L; /* 3 for block type, 7 for EOB */ |
|
|
|
|
#endif |
|
|
|
|
bi_flush(s); |
|
|
|
@ -974,7 +974,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last) |
|
|
|
|
send_bits(s, (STATIC_TREES<<1)+last, 3); |
|
|
|
|
compress_block(s, (const ct_data *)static_ltree, |
|
|
|
|
(const ct_data *)static_dtree); |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len += 3 + s->static_len; |
|
|
|
|
#endif |
|
|
|
|
} else { |
|
|
|
@ -983,7 +983,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last) |
|
|
|
|
max_blindex+1); |
|
|
|
|
compress_block(s, (const ct_data *)s->dyn_ltree, |
|
|
|
|
(const ct_data *)s->dyn_dtree); |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len += 3 + s->opt_len; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
@ -995,7 +995,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last) |
|
|
|
|
|
|
|
|
|
if (last) { |
|
|
|
|
bi_windup(s); |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->compressed_len += 7; /* align on byte boundary */ |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
@ -1193,7 +1193,7 @@ local void bi_windup(s) |
|
|
|
|
} |
|
|
|
|
s->bi_buf = 0; |
|
|
|
|
s->bi_valid = 0; |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->bits_sent = (s->bits_sent+7) & ~7; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
@ -1213,11 +1213,11 @@ local void copy_block(s, buf, len, header) |
|
|
|
|
if (header) { |
|
|
|
|
put_short(s, (ush)len); |
|
|
|
|
put_short(s, (ush)~len); |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->bits_sent += 2*16; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|
#ifdef DEBUG |
|
|
|
|
#ifdef ZLIB_DEBUG |
|
|
|
|
s->bits_sent += (ulg)len<<3; |
|
|
|
|
#endif |
|
|
|
|
while (len--) { |
|
|
|
|