]> git.cworth.org Git - gzip/blobdiff - inflate.c
Avoid creating an undersized buffer for the hufts table.
[gzip] / inflate.c
index 9f3a6616e18e1ca70eaa0c1b88bde43a0209211c..2f4954be020fd9a9eaf0da4015ca8ee465e6dcc5 100644 (file)
--- a/inflate.c
+++ b/inflate.c
@@ -335,13 +335,15 @@ int *m;                 /* maximum lookup bits, returns actual */
   } while (--i);
   if (c[0] == n)                /* null input--all zero length codes */
   {
-    q = (struct huft *) malloc (2 * sizeof *q);
+    q = (struct huft *) malloc (3 * sizeof *q);
     if (!q)
       return 3;
-    hufts += 2;
+    hufts += 3;
     q[0].v.t = (struct huft *) NULL;
     q[1].e = 99;    /* invalid code marker */
     q[1].b = 1;
+    q[2].e = 99;    /* invalid code marker */
+    q[2].b = 1;
     *t = q + 1;
     *m = 1;
     return 0;