[Zlib-devel] zlib 1.2.5.2 available for testing

Jan Nijtmans nijtmans at users.sourceforge.net
Sun Dec 18 16:22:05 EST 2011


Of course, the code should have been:

        #undef gzgetc
        int ZEXPORT gzgetc(g)
            gzFile g;
        {
            return ((g)->have ? ((g)->have--, (g)->pos++,
*((g)->next)++) : gzgetc_(g));
        }

Regards,
             Jan Nijtmans

Op 18 december 2011 22:00 heeft Jan Nijtmans
<nijtmans at users.sourceforge.net> het volgende geschreven:
> From the changes:
> - Change gzgetc() to a macro for speed (~40% speedup in testing)
>
> Removing the gzgetc() function and adding gzgetc_() is
> a potential binary incompatibility for any existing software
> using gzgetc. It prevents zlib 1.2.5 to be plug-in replaced
> by zlib 1.2.6: existing software needs to be recompiled
> first. This is easy to fix:
> - in zlib.h, re-enable the declaration fo gzgetc (it will be
>  overridden by the macro that follows)
> - in gzread,c, add the following code somewhere:
>
>       #undef gzgetc
>       int ZEXPORT gzgetc(file)
>           gzFile file;
>        {
>            return ((g)->have ? ((g)->have--, (g)->pos++,
> *((g)->next)++) : gzgetc_(g))
>        }
>
> - don't forget to add gzgetc back in win32/zlib.def and possibly other
> locations.
>
> This way, exisiting software will continue to work, only without the
> speed improvement, as long as it is not recompiled.
>
> Regards,
>            Jan Nijtmans
>
> Op 18 december 2011 19:58 heeft Mark Adler <madler at madler.net> het
> volgende geschreven:
>> zlibbers,
>>
>> zlib 1.2.5.2 is available for testing here:
>>
>>    http://zlib.net/current/beta/
>>
>> The change log and archive signatures are below.  Please run this through your grinders on whatever platforms you can.  Once we iron out any portability or build issues, this version will be released as 1.2.6.  Thank you for your support.
>>
>> Mark
>>
>>
>> MD5 (zlib-1.2.5.2.tar.gz) = d152326768c68ffd9f8d619c10a0f643
>>
>> SHA1(zlib-1.2.5.2.tar.gz)= b3391aa22f07a05259ad9c31eee98e5dbb498429
>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.11 (Darwin)
>>
>> iD8DBQBO7jWweD/Njli8r7oRAnkaAKCa9T6iIbpwEbhBTK6LBDtLJ5rLiQCeM/vW
>> LJBM6seucmu50jYPejUoifU=
>> =bg2l
>> -----END PGP SIGNATURE-----
>>
>>
>> Changes in 1.2.5.2 (17 Dec 2011)
>> - fix ld error: unable to find version dependency 'ZLIB_1.2.5'
>> - use relative symlinks for shared libs
>> - Avoid searching past window for Z_RLE strategy
>> - Assure that high-water mark initialization is always applied in deflate
>> - Add assertions to fill_window() in deflate.c to match comments
>> - Update python link in README
>> - Correct spelling error in gzread.c
>> - Fix bug in gzgets() for a concatenated empty gzip stream
>> - Correct error in comment for gz_make()
>> - Change gzread() and related to ignore junk after gzip streams
>> - Allow gzread() and related to continue after gzclearerr()
>> - Allow gzrewind() and gzseek() after a premature end-of-file
>> - Simplify gzseek() now that raw after gzip is ignored
>> - Change gzgetc() to a macro for speed (~40% speedup in testing)
>> - Fix gzclose() to return the actual error last encountered
>> - Always add large file support for windows
>> - Include zconf.h for windows large file support
>> - Include zconf.h.cmakein for windows large file support
>> - Update zconf.h.cmakein on make distclean
>> - Merge vestigial vsnprintf determination from zutil.h to gzguts.h
>> - Clarify how gzopen() appends in zlib.h comments
>> - Correct documentation of gzdirect() since junk at end now ignored
>> - Add a transparent write mode to gzopen() when 'T' is in the mode
>> - Update python link in zlib man page
>> - Get inffixed.h and MAKEFIXED result to match
>> - Add a ./config --solo option to make zlib subset with no libary use
>> - Add undocumented inflateResetKeep() function for CAB file decoding
>> - Add --cover option to ./configure for gcc coverage testing
>> - Add #define ZLIB_CONST option to use const in the z_stream interface
>> - Add comment to gzdopen() in zlib.h to use dup() when using fileno()
>> - Note behavior of uncompress() to provide as much data as it can
>> - Add files in contrib/minizip to aid in building libminizip
>> - Split off AR options in Makefile.in and configure
>> - Change ON macro to Z_ARG to avoid application conflicts
>> - Facilitate compilation with Borland C++ for pragmas and vsnprintf
>> - Include io.h for Turbo C / Borland C++
>> - Move example.c and minigzip.c to test/
>> - Simplify incomplete code table filling in inflate_table()
>> - Remove code from inflate.c and infback.c that is impossible to execute
>> - Test the inflate code with full coverage
>> - Allow deflateSetDictionary, inflateSetDictionary at any time (in raw)
>> - Add deflateResetKeep and fix inflateResetKeep to retain dictionary
>> - Fix gzwrite.c to accommodate reduced memory zlib compilation
>> - Have inflate() with Z_FINISH avoid the allocation of a window
>> - Do not set strm->adler when doing raw inflate
>> - Fix gzeof() to behave just like feof() when read is not past end of file
>> - Fix bug in gzread.c when end-of-file is reached
>> - Avoid use of Z_BUF_ERROR in gz* functions except for premature EOF
>> - Document gzread() capability to read concurrently written files
>> - Remove hard-coding of resource compiler in CMakeLists.txt [Blammo]
>>
>> Changes in 1.2.5.1 (10 Sep 2011)
>> - Update FAQ entry on shared builds (#13)
>> - Avoid symbolic argument to chmod in Makefile.in
>> - Fix bug and add consts in contrib/puff [Oberhumer]
>> - Update contrib/puff/zeros.raw test file to have all block types
>> - Add full coverage test for puff in contrib/puff/Makefile
>> - Fix static-only-build install in Makefile.in
>> - Fix bug in unzGetCurrentFileInfo() in contrib/minizip [Kuno]
>> - Add libz.a dependency to shared in Makefile.in for parallel builds
>> - Spell out "number" (instead of "nb") in zlib.h for total_in, total_out
>> - Replace $(...) with `...` in configure for non-bash sh [Bowler]
>> - Add darwin* to Darwin* and solaris* to SunOS\ 5* in configure [Groffen]
>> - Add solaris* to Linux* in configure to allow gcc use [Groffen]
>> - Add *bsd* to Linux* case in configure [Bar-Lev]
>> - Add inffast.obj to dependencies in win32/Makefile.msc
>> - Correct spelling error in deflate.h [Kohler]
>> - Change libzdll.a again to libz.dll.a (!) in win32/Makefile.gcc
>> - Add test to configure for GNU C looking for gcc in output of $cc -v
>> - Add zlib.pc generation to win32/Makefile.gcc [Weigelt]
>> - Fix bug in zlib.h for _FILE_OFFSET_BITS set and _LARGEFILE64_SOURCE not
>> - Add comment in zlib.h that adler32_combine with len2 < 0 makes no sense
>> - Make NO_DIVIDE option in adler32.c much faster (thanks to John Reiser)
>> - Make stronger test in zconf.h to include unistd.h for LFS
>> - Apply Darwin patches for 64-bit file offsets to contrib/minizip [Slack]
>> - Fix zlib.h LFS support when Z_PREFIX used
>> - Add updated as400 support (removed from old) [Monnerat]
>> - Avoid deflate sensitivity to volatile input data
>> - Avoid division in adler32_combine for NO_DIVIDE
>> - Clarify the use of Z_FINISH with deflateBound() amount of space
>> - Set binary for output file in puff.c
>> - Use u4 type for crc_table to avoid conversion warnings
>> - Apply casts in zlib.h to avoid conversion warnings
>> - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller]
>> - Improve inflateSync() documentation to note indeterminancy
>> - Add deflatePending() function to return the amount of pending output
>> - Correct the spelling of "specification" in FAQ [Randers-Pehrson]
>> - Add a check in configure for stdarg.h, use for gzprintf()
>> - Check that pointers fit in ints when gzprint() compiled old style
>> - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler]
>> - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt]
>> - Add debug records in assmebler code [Londer]
>> - Update RFC references to use http://tools.ietf.org/html/... [Li]
>> - Add --archs option, use of libtool to configure for Mac OS X [Borstel]
>>
>>
>> _______________________________________________
>> Zlib-devel mailing list
>> Zlib-devel at madler.net
>> http://mail.madler.net/mailman/listinfo/zlib-devel_madler.net




More information about the Zlib-devel mailing list