24 int ZEXPORT
uncompress (Bytef *dest, uLongf *destLen,
const Bytef *source, uLong sourceLen)
29 stream.next_in = (Bytef*)source;
30 stream.avail_in = (uInt)sourceLen;
32 if ((uLong)stream.avail_in != sourceLen)
return Z_BUF_ERROR;
34 stream.next_out = dest;
35 stream.avail_out = (uInt)*destLen;
36 if ((uLong)stream.avail_out != *destLen)
return Z_BUF_ERROR;
38 stream.zalloc = (alloc_func)0;
39 stream.zfree = (free_func)0;
41 err = inflateInit(&stream);
42 if (err != Z_OK)
return err;
44 err =
inflate(&stream, Z_FINISH);
45 if (err != Z_STREAM_END) {
47 if (err == Z_NEED_DICT || (err == Z_BUF_ERROR && stream.avail_in == 0))
51 *destLen = stream.total_out;
int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen)
int ZEXPORT inflateEnd(z_streamp strm)
int ZEXPORT inflate(z_streamp strm, int flush)