Glenn Maynard 6558f6f7de This comment is incorrect. deflateReset() doesn't leak; it resets the
object to a just-initialized state.  deflateEnd() is correct (no comment
needed for that; it's obvious, I don't know why I used deflateReset to
begin with).

zlib doesn't appear to do anything special with allocations; running
the following:

#include <zlib.h>
main()
{
	z_stream z; z.zalloc = NULL; z.zfree = NULL;
	inflateInit2( &z, -MAX_WBITS ); inflateReset( &z );
}

under Valgrind shows:

==17033== 7080 bytes in 1 blocks are possibly lost in loss record 1 of 1
==17033==    at 0x1B904EDD: malloc (vg_replace_malloc.c:131)
==17033==    by 0x1B91D4B4: zcalloc (in /usr/lib/libz.so.1.2.1.2)
==17033==    by 0x1B91D608: inflateInit2_ (in /usr/lib/libz.so.1.2.1.2)
==17033==    by 0x80485A4: main (in /home/glenn/a.out)
2004-12-09 04:07:14 +00:00
S
Description
Languages
C++ 85.7%
Lua 4.3%
C 4.3%
Rich Text Format 2.3%
CMake 1.1%
Other 2%