📄 changelog
字号:
- Eliminate memory leaks on error conditions in inflate- Removed some vestigial code in inflate- Update web address in README Changes in 1.0.4 (24 Jul 96)- In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF bit, so the decompressor could decompress all the correct data but went on to attempt decompressing extra garbage data. This affected minigzip too.- zlibVersion and gzerror return const char* (needed for DLL)- port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno)- use z_error only for DEBUG (avoid problem with DLLs)Changes in 1.0.3 (2 Jul 96)- use z_streamp instead of z_stream *, which is now a far pointer in MSDOS small and medium models; this makes the library incompatible with previous versions for these models. (No effect in large model or on other systems.)- return OK instead of BUF_ERROR if previous deflate call returned with avail_out as zero but there is nothing to do- added memcmp for non STDC compilers- define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly)- define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO)- better check for 16-bit mode MSC (avoids problem with Symantec)Changes in 1.0.2 (23 May 96)- added Windows DLL support- added a function zlibVersion (for the DLL support)- fixed declarations using Bytef in infutil.c (pb with MSDOS medium model)- Bytef is define's instead of typedef'd only for Borland C- avoid reading uninitialized memory in example.c- mention in README that the zlib format is now RFC1950- updated Makefile.dj2- added algorithm.docChanges in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion]- fix array overlay in deflate.c which sometimes caused bad compressed data- fix inflate bug with empty stored block- fix MSDOS medium model which was broken in 0.99- fix deflateParams() which could generated bad compressed data.- Bytef is define'd instead of typedef'ed (work around Borland bug)- added an INDEX file- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32), Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas)- speed up adler32 for modern machines without auto-increment- added -ansi for IRIX in configure- static_init_done in trees.c is an int- define unlink as delete for VMS- fix configure for QNX- add configure branch for SCO and HPUX- avoid many warnings (unused variables, dead assignments, etc...)- no fdopen for BeOS- fix the Watcom fix for 32 bit mode (define FAR as empty)- removed redefinition of Byte for MKWERKS- work around an MWKERKS bug (incorrect merge of all .h files)Changes in 0.99 (27 Jan 96)- allow preset dictionary shared between compressor and decompressor- allow compression level 0 (no compression)- add deflateParams in zlib.h: allow dynamic change of compression level and compression strategy.- test large buffers and deflateParams in example.c- add optional "configure" to build zlib as a shared library- suppress Makefile.qnx, use configure instead- fixed deflate for 64-bit systems (detected on Cray)- fixed inflate_blocks for 64-bit systems (detected on Alpha)- declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2)- always return Z_BUF_ERROR when deflate() has nothing to do- deflateInit and inflateInit are now macros to allow version checking- prefix all global functions and types with z_ with -DZ_PREFIX- make falloc completely reentrant (inftrees.c)- fixed very unlikely race condition in ct_static_init- free in reverse order of allocation to help memory manager- use zlib-1.0/* instead of zlib/* inside the tar.gz- make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion -Wstrict-prototypes -Wmissing-prototypes"- allow gzread on concatenated .gz files- deflateEnd now returns Z_DATA_ERROR if it was premature- deflate is finally (?) fully deterministic (no matches beyond end of input)- Document Z_SYNC_FLUSH- add uninstall in Makefile- Check for __cpluplus in zlib.h- Better test in ct_align for partial flush- avoid harmless warnings for Borland C++- initialize hash_head in deflate.c- avoid warning on fdopen (gzio.c) for HP cc -Aa- include stdlib.h for STDC compilers- include errno.h for Cray- ignore error if ranlib doesn't exist- call ranlib twice for NeXTSTEP- use exec_prefix instead of prefix for libz.a- renamed ct_* as _tr_* to avoid conflict with applications- clear z->msg in inflateInit2 before any error return- initialize opaque in example.c, gzio.c, deflate.c and inflate.c- fixed typo in zconf.h (_GNUC__ => __GNUC__)- check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode)- fix typo in Make_vms.com (f$trnlnm -> f$getsyi)- in fcalloc, normalize pointer if size > 65520 bytes- don't use special fcalloc for 32 bit Borland C++- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc...- use Z_BINARY instead of BINARY- document that gzclose after gzdopen will close the file- allow "a" as mode in gzopen.- fix error checking in gzread- allow skipping .gz extra-field on pipes- added reference to Perl interface in README- put the crc table in FAR data (I dislike more and more the medium model :)- added get_crc_table- added a dimension to all arrays (Borland C can't count).- workaround Borland C bug in declaration of inflate_codes_new & inflate_fast- guard against multiple inclusion of *.h (for precompiled header on Mac)- Watcom C pretends to be Microsoft C small model even in 32 bit mode.- don't use unsized arrays to avoid silly warnings by Visual C++: warning C4746: 'inflate_mask' : unsized array treated as '__far' (what's wrong with far data in far model?).- define enum out of inflate_blocks_state to allow compilation with C++Changes in 0.95 (16 Aug 95)- fix MSDOS small and medium model (now easier to adapt to any compiler)- inlined send_bits- fix the final (:-) bug for deflate with flush (output was correct but not completely flushed in rare occasions).- default window size is same for compression and decompression (it's now sufficient to set MAX_WBITS in zconf.h).- voidp -> voidpf and voidnp -> voidp (for consistency with other typedefs and because voidnp was not near in large model).Changes in 0.94 (13 Aug 95)- support MSDOS medium model- fix deflate with flush (could sometimes generate bad output)- fix deflateReset (zlib header was incorrectly suppressed)- added support for VMS- allow a compression level in gzopen()- gzflush now calls fflush- For deflate with flush, flush even if no more input is provided.- rename libgz.a as libz.a- avoid complex expression in infcodes.c triggering Turbo C bug- work around a problem with gcc on Alpha (in INSERT_STRING)- don't use inline functions (problem with some gcc versions)- allow renaming of Byte, uInt, etc... with #define.- avoid warning about (unused) pointer before start of array in deflate.c- avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c- avoid reserved word 'new' in trees.cChanges in 0.93 (25 June 95)- temporarily disable inline functions- make deflate deterministic- give enough lookahead for PARTIAL_FLUSH- Set binary mode for stdin/stdout in minigzip.c for OS/2- don't even use signed char in inflate (not portable enough)- fix inflate memory leak for segmented architecturesChanges in 0.92 (3 May 95)- don't assume that char is signed (problem on SGI)- Clear bit buffer when starting a stored block- no memcpy on Pyramid- suppressed inftest.c- optimized fill_window, put longest_match inline for gcc- optimized inflate on stored blocks.- untabify all sources to simplify patchesChanges in 0.91 (2 May 95)- Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h- Document the memory requirements in zconf.h- added "make install"- fix sync search logic in inflateSync- deflate(Z_FULL_FLUSH) now works even if output buffer too short- after inflateSync, don't scare people with just "lo world"- added support for DJGPPChanges in 0.9 (1 May 95)- don't assume that zalloc clears the allocated memory (the TurboC bug was Mark's bug after all :)- let again gzread copy uncompressed data unchanged (was working in 0.71)- deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented- added a test of inflateSync in example.c- moved MAX_WBITS to zconf.h because users might want to change that.- document explicitly that zalloc(64K) on MSDOS must return a normalized pointer (zero offset)- added Makefiles for Microsoft C, Turbo C, Borland C++- faster crc32()Changes in 0.8 (29 April 95)- added fast inflate (inffast.c)- deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this is incompatible with previous versions of zlib which returned Z_OK.- work around a TurboC compiler bug (bad code for b << 0, see infutil.h) (actually that was not a compiler bug, see 0.81 above)- gzread no longer reads one extra byte in certain cases- In gzio destroy(), don't reference a freed structure- avoid many warnings for MSDOS- avoid the ERROR symbol which is used by MS WindowsChanges in 0.71 (14 April 95)- Fixed more MSDOS compilation problems :( There is still a bug with TurboC large model.Changes in 0.7 (14 April 95)- Added full inflate support.- Simplified the crc32() interface. The pre- and post-conditioning (one's complement) is now done inside crc32(). WARNING: this is incompatible with previous versions; see zlib.h for the new usage.Changes in 0.61 (12 April 95)- workaround for a bug in TurboC. example and minigzip now work on MSDOS.Changes in 0.6 (11 April 95)- added minigzip.c- added gzdopen to reopen a file descriptor as gzFile- added transparent reading of non-gziped files in gzread.- fixed bug in gzread (don't read crc as data)- fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose).- don't allocate big arrays in the stack (for MSDOS)- fix some MSDOS compilation problemsChanges in 0.5:- do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but not yet Z_FULL_FLUSH.- support decompression but only in a single step (forced Z_FINISH)- added opaque object for zalloc and zfree.- added deflateReset and inflateReset- added a variable zlib_version for consistency checking.- renamed the 'filter' parameter of deflateInit2 as 'strategy'. Added Z_FILTERED and Z_HUFFMAN_ONLY constants.Changes in 0.4:- avoid "zip" everywhere, use zlib instead of ziplib.- suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush if compression method == 8.- added adler32 and crc32- renamed deflateOptions as deflateInit2, call one or the other but not both- added the method parameter for deflateInit2.- added inflateInit2- simplied considerably deflateInit and inflateInit by not supporting user-provided history buffer. This is supported only in deflateInit2 and inflateInit2.Changes in 0.3:- prefix all macro names with Z_- use Z_FINISH instead of deflateEnd to finish compression.- added Z_HUFFMAN_ONLY- added gzerror()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -