about summary refs log tree commit diff
path: root/src/engine/external/zlib/inftrees.h
diff options
context:
space:
mode:
authoroy <Tom_Adams@web.de>2011-12-04 17:50:52 +0100
committeroy <Tom_Adams@web.de>2011-12-04 17:50:52 +0100
commit55fe59fa8a11464ff9705e4ca2b206d750d9624e (patch)
tree146e6f4a57752f6f00bc802b4e42e7a4b2a1ac9d /src/engine/external/zlib/inftrees.h
parent9221f3dda2b89dfa1f0294d402e45b96685b9693 (diff)
downloadzcatch-55fe59fa8a11464ff9705e4ca2b206d750d9624e.tar.gz
zcatch-55fe59fa8a11464ff9705e4ca2b206d750d9624e.zip
updated zlib to 1.2.5
Diffstat (limited to 'src/engine/external/zlib/inftrees.h')
-rw-r--r--src/engine/external/zlib/inftrees.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/engine/external/zlib/inftrees.h b/src/engine/external/zlib/inftrees.h
index b1104c87..baa53a0b 100644
--- a/src/engine/external/zlib/inftrees.h
+++ b/src/engine/external/zlib/inftrees.h
@@ -1,5 +1,5 @@
 /* inftrees.h -- header to use inftrees.c
- * Copyright (C) 1995-2005 Mark Adler
+ * Copyright (C) 1995-2005, 2010 Mark Adler
  * For conditions of distribution and use, see copyright notice in zlib.h
  */
 
@@ -35,21 +35,28 @@ typedef struct {
     01000000 - invalid code
  */
 
-/* Maximum size of dynamic tree.  The maximum found in a long but non-
-   exhaustive search was 1444 code structures (852 for length/literals
-   and 592 for distances, the latter actually the result of an
-   exhaustive search).  The true maximum is not known, but the value
-   below is more than safe. */
-#define ENOUGH 2048
-#define MAXD 592
+/* Maximum size of the dynamic table.  The maximum number of code structures is
+   1444, which is the sum of 852 for literal/length codes and 592 for distance
+   codes.  These values were found by exhaustive searches using the program
+   examples/enough.c found in the zlib distribtution.  The arguments to that
+   program are the number of symbols, the initial root table size, and the
+   maximum bit length of a code.  "enough 286 9 15" for literal/length codes
+   returns returns 852, and "enough 30 6 15" for distance codes returns 592.
+   The initial root table size (9 or 6) is found in the fifth argument of the
+   inflate_table() calls in inflate.c and infback.c.  If the root table size is
+   changed, then these maximum sizes would be need to be recalculated and
+   updated. */
+#define ENOUGH_LENS 852
+#define ENOUGH_DISTS 592
+#define ENOUGH (ENOUGH_LENS+ENOUGH_DISTS)
 
-/* Type of code to build for inftable() */
+/* Type of code to build for inflate_table() */
 typedef enum {
     CODES,
     LENS,
     DISTS
 } codetype;
 
-extern int inflate_table OF((codetype type, unsigned short FAR *lens,
+int ZLIB_INTERNAL inflate_table OF((codetype type, unsigned short FAR *lens,
                              unsigned codes, code FAR * FAR *table,
                              unsigned FAR *bits, unsigned short FAR *work));