diff --git a/as400/bndsrc b/as400/bndsrc index dad2bc9..036cd63 100644 --- a/as400/bndsrc +++ b/as400/bndsrc @@ -180,5 +180,6 @@ STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('ZLIB') EXPORT SYMBOL("inflatePrime") EXPORT SYMBOL("inflateReset2") EXPORT SYMBOL("inflateUndermine") + EXPORT SYMBOL("inflateResetKeep") ENDPGMEXP diff --git a/as400/zlib.inc b/as400/zlib.inc index 41ff616..976dca2 100644 --- a/as400/zlib.inc +++ b/as400/zlib.inc @@ -431,6 +431,10 @@ D strm like(z_stream) Expansion stream D arg 10I 0 value Error code * + D inflateResetKeep... + D PR 10I 0 extproc('inflateResetKeep') End and init. stream + D strm like(z_stream) Expansion stream + * D gzflags PR 10U 0 extproc('gzflags') * /endif diff --git a/contrib/vstudio/vc10/zlibvc.def b/contrib/vstudio/vc10/zlibvc.def index 0d6dc38..d6ab1c1 100644 --- a/contrib/vstudio/vc10/zlibvc.def +++ b/contrib/vstudio/vc10/zlibvc.def @@ -128,7 +128,8 @@ EXPORTS inflatePrime @158 inflateReset2 @159 inflateUndermine @160 - -; zlib1 v1.2.6 added: - gzgetc_ @30 - gzflags @162 + +; zlib1 v1.2.6 added: + gzgetc_ @30 + gzflags @162 + inflateResetKeep @163 diff --git a/contrib/vstudio/vc9/zlibvc.def b/contrib/vstudio/vc9/zlibvc.def index 0d6dc38..d6ab1c1 100644 --- a/contrib/vstudio/vc9/zlibvc.def +++ b/contrib/vstudio/vc9/zlibvc.def @@ -128,7 +128,8 @@ EXPORTS inflatePrime @158 inflateReset2 @159 inflateUndermine @160 - -; zlib1 v1.2.6 added: - gzgetc_ @30 - gzflags @162 + +; zlib1 v1.2.6 added: + gzgetc_ @30 + gzflags @162 + inflateResetKeep @163 diff --git a/inflate.c b/inflate.c index cf10b01..e14b361 100644 --- a/inflate.c +++ b/inflate.c @@ -100,7 +100,7 @@ local int updatewindow OF((z_streamp strm, unsigned out)); local unsigned syncsearch OF((unsigned FAR *have, unsigned char FAR *buf, unsigned len)); -int ZEXPORT inflateReset(strm) +int ZEXPORT inflateResetKeep(strm) z_streamp strm; { struct inflate_state FAR *state; @@ -115,9 +115,6 @@ z_streamp strm; state->havedict = 0; state->dmax = 32768U; state->head = Z_NULL; - state->wsize = 0; - state->whave = 0; - state->wnext = 0; state->hold = 0; state->bits = 0; state->lencode = state->distcode = state->next = state->codes; @@ -127,6 +124,19 @@ z_streamp strm; return Z_OK; } +int ZEXPORT inflateReset(strm) +z_streamp strm; +{ + struct inflate_state FAR *state; + + if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR; + state = (struct inflate_state FAR *)strm->state; + state->wsize = 0; + state->whave = 0; + state->wnext = 0; + return inflateResetKeep(strm); +} + int ZEXPORT inflateReset2(strm, windowBits) z_streamp strm; int windowBits; diff --git a/win32/zlib.def b/win32/zlib.def index 93ea8bf..c420d8b 100644 --- a/win32/zlib.def +++ b/win32/zlib.def @@ -77,5 +77,6 @@ EXPORTS inflateSyncPoint get_crc_table inflateUndermine + inflateResetKeep gzgetc_ gzflags diff --git a/zconf.h b/zconf.h index ed16b06..df7ff61 100644 --- a/zconf.h +++ b/zconf.h @@ -103,6 +103,7 @@ # define inflateSync z_inflateSync # define inflateSyncPoint z_inflateSyncPoint # define inflateUndermine z_inflateUndermine +# define inflateResetKeep z_inflateResetKeep # define inflate_copyright z_inflate_copyright # define inflate_fast z_inflate_fast # define inflate_table z_inflate_table diff --git a/zconf.h.cmakein b/zconf.h.cmakein index 84e4680..8450547 100644 --- a/zconf.h.cmakein +++ b/zconf.h.cmakein @@ -105,6 +105,7 @@ # define inflateSync z_inflateSync # define inflateSyncPoint z_inflateSyncPoint # define inflateUndermine z_inflateUndermine +# define inflateResetKeep z_inflateResetKeep # define inflate_copyright z_inflate_copyright # define inflate_fast z_inflate_fast # define inflate_table z_inflate_table diff --git a/zconf.h.in b/zconf.h.in index ed16b06..df7ff61 100644 --- a/zconf.h.in +++ b/zconf.h.in @@ -103,6 +103,7 @@ # define inflateSync z_inflateSync # define inflateSyncPoint z_inflateSyncPoint # define inflateUndermine z_inflateUndermine +# define inflateResetKeep z_inflateResetKeep # define inflate_copyright z_inflate_copyright # define inflate_fast z_inflate_fast # define inflate_table z_inflate_table diff --git a/zlib.h b/zlib.h index 96c2c14..99cd058 100644 --- a/zlib.h +++ b/zlib.h @@ -1687,6 +1687,7 @@ ZEXTERN const char * ZEXPORT zError OF((int)); ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); ZEXTERN const uLongf * ZEXPORT get_crc_table OF((void)); ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); +ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); #ifndef Z_SOLO ZEXTERN unsigned long ZEXPORT gzflags OF((void)); #endif diff --git a/zlib.map b/zlib.map index 627133d..dd27591 100644 --- a/zlib.map +++ b/zlib.map @@ -74,4 +74,5 @@ ZLIB_1.2.5.1 { ZLIB_1.2.5.2 { gzflags; gzgetc_; + inflateResetKeep; } ZLIB_1.2.5.1;