-/* showtree is only used for debugging purposes */
-void showtree(uInt b, inflate_huft *t, int d)
-{
- int i, e;
- char p[2*d+1];
-
- for (i = 0; i < 2*d; i++)
- p[i] = ' ';
- p[i] = 0;
- printf("%s[%d]\n", p, 1<<b);
- for (i = 0; i < (1<<b); i++)
- {
- e = t[i].exop;
- if (e == 0) /* simple code */
- printf("%s%d(%d): literal=%d\n", p, i, t[i].bits, t[i].base);
- else if (e & 16) /* length */
- printf("%s%d(%d): length/distance=%d+(%d)\n",
- p, i, t[i].bits, t[i].base, e & 15);
- else if ((e & 64) == 0) /* next table */
- {
- printf("%s%d(%d): *sub table*\n", p, i, t[i].bits);
- showtree(e, t + t[i].base, d + 1);
- }
- else if (e & 32) /* end of block */
- printf("%s%d(%d): end of block\n", p, i, t[i].bits);
- else /* bad code */
- printf("%s%d: bad code\n", p, i);
- }
-}
-