
This patch adds watchdog reset call to allow its invokation during decompression phase. This control was present on old zlib version and here it is backported for those relevant routines. This patch is sent as a zlib separate one beacuse it was not tested due to specific board lack. zlib patches will be unified just in one when this will be validated through tests.
Signed-off-by: Giuseppe Condorelli giuseppe.condorelli@st.com --- lib_generic/zlib.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/lib_generic/zlib.c b/lib_generic/zlib.c index 49fb145..6a78dc9 100644 --- a/lib_generic/zlib.c +++ b/lib_generic/zlib.c @@ -1040,6 +1040,8 @@ z_streamp strm; state->hold = 0; state->bits = 0; state->lencode = state->distcode = state->next = state->codes; + if (strm->outcb != Z_NULL) + (*strm->outcb)(Z_NULL, 0); Tracev((stderr, "inflate: reset\n")); return Z_OK; } @@ -1950,7 +1952,11 @@ z_streamp strm; if (strm == Z_NULL || strm->state == Z_NULL || strm->zfree == (free_func)0) return Z_STREAM_ERROR; state = (struct inflate_state FAR *)strm->state; - if (state->window != Z_NULL) ZFREE(strm, state->window); + if (state->window != Z_NULL) { + if (strm->outcb != Z_NULL) + (*strm->outcb)(Z_NULL, 0); + ZFREE(strm, state->window); + } ZFREE(strm, strm->state); strm->state = Z_NULL; Tracev((stderr, "inflate: end\n"));