The inflateEnd() function shall free all allocated state information referenced by stream. All pending output is discarded, and unprocessed input is ignored.
On success, inflateEnd() shall return Z_OK. Otherwise it shall return Z_STREAM_ERROR to indicate the error.
On error, inflateEnd() shall return Z_STREAM_ERROR. The following conditions shall be treated as an error:
The state in stream is inconsistent.
zfree function pointer is