A specific malformed input file (cf. attachment) either leads to gzip
crashing with segmentation violation or hanging in an endless loop.
Attached patch fixes the problem.
* Add Carl Worth as an uploader.
* Fix "-f -" to work with zgrep, closes: #168606
+ * Avoid creating undersized hufts table, closes #507263
- -- Carl Worth <cworth@cworth.org> Fri, 27 Feb 2009 12:54:09 -0800
+ -- Carl Worth <cworth@cworth.org> Fri, 27 Feb 2009 12:54:37 -0800
gzip (1.3.12-7) unstable; urgency=low
} 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;