2 changed files with 49 additions and 5 deletions
@ -0,0 +1,40 @@
|
||||
diff -u3 zlib-1.1.3/infblock.c zlib-1.1.4/infblock.c
|
||||
--- zlib-1.1.3/infblock.c Mon Jun 8 19:06:16 1998
|
||||
+++ zlib-1.1.4/infblock.c Mon Mar 11 14:16:01 2002
|
||||
@@ -249,10 +249,12 @@
|
||||
&s->sub.trees.tb, s->hufts, z);
|
||||
if (t != Z_OK)
|
||||
{
|
||||
- ZFREE(z, s->sub.trees.blens);
|
||||
r = t;
|
||||
if (r == Z_DATA_ERROR)
|
||||
+ {
|
||||
+ ZFREE(z, s->sub.trees.blens);
|
||||
s->mode = BAD;
|
||||
+ }
|
||||
LEAVE
|
||||
}
|
||||
s->sub.trees.index = 0;
|
||||
@@ -313,11 +315,13 @@
|
||||
t = inflate_trees_dynamic(257 + (t & 0x1f), 1 + ((t >> 5) & 0x1f),
|
||||
s->sub.trees.blens, &bl, &bd, &tl, &td,
|
||||
s->hufts, z);
|
||||
- ZFREE(z, s->sub.trees.blens);
|
||||
if (t != Z_OK)
|
||||
{
|
||||
if (t == (uInt)Z_DATA_ERROR)
|
||||
+ {
|
||||
+ ZFREE(z, s->sub.trees.blens);
|
||||
s->mode = BAD;
|
||||
+ }
|
||||
r = t;
|
||||
LEAVE
|
||||
}
|
||||
@@ -329,6 +333,7 @@
|
||||
}
|
||||
s->sub.decode.codes = c;
|
||||
}
|
||||
+ ZFREE(z, s->sub.trees.blens);
|
||||
s->mode = CODES;
|
||||
case CODES:
|
||||
UPDATE
|
Loading…
Reference in new issue