summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Adler <madler@alumni.caltech.edu>2011-09-09 23:34:22 -0700
committerMark Adler <madler@alumni.caltech.edu>2011-09-09 23:34:22 -0700
commit05d47d2627a68a15ba23fb10b17fbc73551aeec1 (patch)
tree8d5e1688e69c51c487e8b44a9e9d8ca71f67cfd0
parenta1141160bcf563f1a269be68a21f1651f687bb69 (diff)
downloadzlib-1.2.4.1.tar.gz
zlib-1.2.4.1.tar.bz2
zlib-1.2.4.1.zip
zlib 1.2.4.1v1.2.4.1
-rw-r--r--CMakeLists.txt11
-rw-r--r--ChangeLog24
-rw-r--r--Makefile.in10
-rw-r--r--README4
-rwxr-xr-xconfigure64
-rw-r--r--contrib/delphi/ZLib.pas2
-rw-r--r--contrib/dotzlib/DotZLib/UnitTests.cs2
-rw-r--r--contrib/infback9/inftree9.c4
-rw-r--r--contrib/pascal/zlibpas.pas2
-rw-r--r--contrib/vstudio/vc10/zlib.rc6
-rw-r--r--contrib/vstudio/vc9/zlib.rc6
-rw-r--r--crc32.c2
-rw-r--r--deflate.c2
-rw-r--r--gzguts.h16
-rw-r--r--gzlib.c10
-rw-r--r--gzread.c3
-rw-r--r--inftrees.c4
-rw-r--r--minigzip.c4
-rw-r--r--qnx/package.qpg10
-rw-r--r--treebuild.xml4
-rw-r--r--win32/Makefile.gcc13
-rw-r--r--win32/README-WIN32.txt103
-rw-r--r--zconf.h7
-rw-r--r--zconf.h.cmakein7
-rw-r--r--zconf.h.in7
-rw-r--r--zlib.34
-rw-r--r--zlib.3.pdfbin8688 -> 8679 bytes
-rw-r--r--zlib.h14
-rw-r--r--zutil.c2
-rw-r--r--zutil.h31
30 files changed, 248 insertions, 130 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7eefa49..a64fe0b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,7 +20,7 @@ check_include_file(stddef.h HAVE_STDDEF_H)
20# 20#
21# Check to see if we have large file support 21# Check to see if we have large file support
22# 22#
23set(CMAKE_REQUIRED_DEFINITIONS -D_LARGEFILE64_SOURCE) 23set(CMAKE_REQUIRED_DEFINITIONS -D_LARGEFILE64_SOURCE=1)
24# We add these other definitions here because CheckTypeSize.cmake 24# We add these other definitions here because CheckTypeSize.cmake
25# in CMake 2.4.x does not automatically do so and we want 25# in CMake 2.4.x does not automatically do so and we want
26# compatibility with CMake 2.4.x. 26# compatibility with CMake 2.4.x.
@@ -35,7 +35,7 @@ if(HAVE_STDDEF_H)
35endif() 35endif()
36check_type_size(off64_t OFF64_T) 36check_type_size(off64_t OFF64_T)
37if(HAVE_OFF64_T) 37if(HAVE_OFF64_T)
38 add_definitions(-D_LARGEFILE64_SOURCE) 38 add_definitions(-D_LARGEFILE64_SOURCE=1)
39endif() 39endif()
40set(CMAKE_REQUIRED_DEFINITIONS) # clear variable 40set(CMAKE_REQUIRED_DEFINITIONS) # clear variable
41 41
@@ -52,13 +52,6 @@ endif()
52# 52#
53check_include_file(unistd.h Z_HAVE_UNISTD_H) 53check_include_file(unistd.h Z_HAVE_UNISTD_H)
54 54
55#
56# Check for errno.h
57check_include_file(errno.h HAVE_ERRNO_H)
58if(NOT HAVE_ERRNO_H)
59 add_definitions(-DNO_ERRNO_H)
60endif()
61
62if(MSVC) 55if(MSVC)
63 set(CMAKE_DEBUG_POSTFIX "d") 56 set(CMAKE_DEBUG_POSTFIX "d")
64 add_definitions(-D_CRT_SECURE_NO_DEPRECATE) 57 add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
diff --git a/ChangeLog b/ChangeLog
index 6d046ee..9817f59 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,30 @@
1 1
2 ChangeLog file for zlib 2 ChangeLog file for zlib
3 3
4Changes in 1.2.4.1 (28 Mar 2010)
5- Remove the use of [a-z] constructs for sed in configure [gentoo 310225]
6- Remove $(SHAREDLIB) from LIBS in Makefile.in [Creech]
7- Restore "for debugging" comment on sprintf() in gzlib.c
8- Remove fdopen for MVS from gzguts.h
9- Put new README-WIN32.txt in win32 [Rowe]
10- Add check for shell to configure and invoke another shell if needed
11- Fix big fat stinking bug in gzseek() on uncompressed files
12- Remove vestigial F_OPEN64 define in zutil.h
13- Set and check the value of _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE
14- Avoid errors on non-LFS systems when applications define LFS macros
15- Set EXE to ".exe" in configure for MINGW [Kahle]
16- Match crc32() in crc32.c exactly to the prototype in zlib.h [Sherrill]
17- Add prefix for cross-compilation in win32/makefile.gcc [Bar-Lev]
18- Add DLL install in win32/makefile.gcc [Bar-Lev]
19- Allow Linux* or linux* from uname in configure [Bar-Lev]
20- Allow ldconfig to be redefined in configure and Makefile.in [Bar-Lev]
21- Add cross-compilation prefixes to configure [Bar-Lev]
22- Match type exactly in gz_load() invocation in gzread.c
23- Match type exactly of zcalloc() in zutil.c to zlib.h alloc_func
24- Provide prototypes for *64 functions when building zlib without LFS
25- Don't use -lc when linking shared library on MinGW
26- Remove errno.h check in configure and vestigial errno code in zutil.h
27
4Changes in 1.2.4 (14 Mar 2010) 28Changes in 1.2.4 (14 Mar 2010)
5- Fix VER3 extraction in configure for no fourth subversion 29- Fix VER3 extraction in configure for no fourth subversion
6- Update zlib.3, add docs to Makefile.in to make .pdf out of it 30- Update zlib.3, add docs to Makefile.in to make .pdf out of it
diff --git a/Makefile.in b/Makefile.in
index 5a2300a..a79f739 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -32,12 +32,14 @@ CPP=$(CC) -E
32 32
33STATICLIB=libz.a 33STATICLIB=libz.a
34SHAREDLIB=libz.so 34SHAREDLIB=libz.so
35SHAREDLIBV=libz.so.1.2.4 35SHAREDLIBV=libz.so.1.2.4.1
36SHAREDLIBM=libz.so.1 36SHAREDLIBM=libz.so.1
37LIBS=$(STATICLIB) $(SHAREDLIB) $(SHAREDLIBV) 37LIBS=$(STATICLIB) $(SHAREDLIBV)
38 38
39AR=ar rc 39AR=ar rc
40RANLIB=ranlib 40RANLIB=ranlib
41LDCONFIG=ldconfig
42LDSHAREDLIBC=-lc
41TAR=tar 43TAR=tar
42SHELL=/bin/sh 44SHELL=/bin/sh
43EXE= 45EXE=
@@ -134,7 +136,7 @@ minigzip64.o: minigzip.c zlib.h zconf.h
134 -@mv objs/$*.o $@ 136 -@mv objs/$*.o $@
135 137
136$(SHAREDLIBV): $(PIC_OBJS) 138$(SHAREDLIBV): $(PIC_OBJS)
137 $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) -lc 139 $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC)
138 rm -f $(SHAREDLIB) $(SHAREDLIBM) 140 rm -f $(SHAREDLIB) $(SHAREDLIBM)
139 ln -s $@ $(SHAREDLIB) 141 ln -s $@ $(SHAREDLIB)
140 ln -s $@ $(SHAREDLIBM) 142 ln -s $@ $(SHAREDLIBM)
@@ -171,7 +173,7 @@ install-libs: $(LIBS)
171 rm -f $(SHAREDLIB) $(SHAREDLIBM); \ 173 rm -f $(SHAREDLIB) $(SHAREDLIBM); \
172 ln -s $(SHAREDLIBV) $(SHAREDLIB); \ 174 ln -s $(SHAREDLIBV) $(SHAREDLIB); \
173 ln -s $(SHAREDLIBV) $(SHAREDLIBM); \ 175 ln -s $(SHAREDLIBV) $(SHAREDLIBM); \
174 (ldconfig || true) >/dev/null 2>&1; \ 176 ($(LDCONFIG) || true) >/dev/null 2>&1; \
175 fi 177 fi
176 cp zlib.3 $(DESTDIR)$(man3dir) 178 cp zlib.3 $(DESTDIR)$(man3dir)
177 chmod 644 $(DESTDIR)$(man3dir)/zlib.3 179 chmod 644 $(DESTDIR)$(man3dir)/zlib.3
diff --git a/README b/README
index f24aeee..a330267 100644
--- a/README
+++ b/README
@@ -1,6 +1,6 @@
1ZLIB DATA COMPRESSION LIBRARY 1ZLIB DATA COMPRESSION LIBRARY
2 2
3zlib 1.2.4 is a general purpose data compression library. All the code is 3zlib 1.2.4.1 is a general purpose data compression library. All the code is
4thread safe. The data format used by the zlib library is described by RFCs 4thread safe. The data format used by the zlib library is described by RFCs
5(Request for Comments) 1950 to 1952 in the files 5(Request for Comments) 1950 to 1952 in the files
6http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) 6http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
@@ -30,7 +30,7 @@ Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
30issue of Dr. Dobb's Journal; a copy of the article is available at 30issue of Dr. Dobb's Journal; a copy of the article is available at
31http://marknelson.us/1997/01/01/zlib-engine/ . 31http://marknelson.us/1997/01/01/zlib-engine/ .
32 32
33The changes made in version 1.2.4 are documented in the file ChangeLog. 33The changes made in version 1.2.4.1 are documented in the file ChangeLog.
34 34
35Unsupported third party contributions are provided in directory contrib/ . 35Unsupported third party contributions are provided in directory contrib/ .
36 36
diff --git a/configure b/configure
index 672fd37..8a36129 100755
--- a/configure
+++ b/configure
@@ -13,15 +13,40 @@
13# If you have problems, try without defining CC and CFLAGS before reporting 13# If you have problems, try without defining CC and CFLAGS before reporting
14# an error. 14# an error.
15 15
16# make sure we are running under a compatible shell (stolen from ffmpeg and libnfo)
17if test "0$ZLIB_CONFIGURE_EXEC" -lt 1; then
18 unset foo
19 (: ${foo%%bar}) 2>/dev/null && ! (: ${foo?}) 2>/dev/null
20 if test "$?" -ne 0; then
21 ZLIB_CONFIGURE_EXEC=1
22 export ZLIB_CONFIGURE_EXEC
23 type "bash" > /dev/null 2>&1 && exec bash "$0" "$@"
24 type "ksh" > /dev/null 2>&1 && exec ksh "$0" "$@"
25 if test -x /usr/xpg4/bin/sh; then
26 exec /usr/xpg4/bin/sh "$0" "$@"
27 fi
28# echo "No compatible shell script interpreter found."
29# exit 1
30# we could give up here, but go ahead and give their old sh a try
31 fi
32fi
33
34if [ -n "${CHOST}" ]; then
35 uname="$(echo "${CHOST}" | sed 's/.*-.*-\(.*\)-.*/\1/')"
36 CROSS_PREFIX="${CHOST}-"
37fi
38
16STATICLIB=libz.a 39STATICLIB=libz.a
17LDFLAGS="${LDFLAGS} -L. ${STATICLIB}" 40LDFLAGS="${LDFLAGS} -L. ${STATICLIB}"
18VER=`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h` 41VER=`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`
19VER3=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\\.[0-9]*\).*/\1/p' < zlib.h` 42VER3=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\\.[0-9]*\).*/\1/p' < zlib.h`
20VER2=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\)\\..*/\1/p' < zlib.h` 43VER2=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\)\\..*/\1/p' < zlib.h`
21VER1=`sed -n -e '/VERSION "/s/.*"\([0-9]*\)\\..*/\1/p' < zlib.h` 44VER1=`sed -n -e '/VERSION "/s/.*"\([0-9]*\)\\..*/\1/p' < zlib.h`
22AR=${AR-"ar"} 45AR=${AR-"${CROSS_PREFIX}ar"}
23AR_RC="${AR} rc" 46AR_RC="${AR} rc"
24RANLIB=${RANLIB-"ranlib"} 47RANLIB=${RANLIB-"${CROSS_PREFIX}ranlib"}
48LDCONFIG=${LDCONFIG-"ldconfig"}
49LDSHAREDLIBC="${LDSHAREDLIBC-"-lc"}"
25prefix=${prefix-/usr/local} 50prefix=${prefix-/usr/local}
26exec_prefix=${exec_prefix-'${prefix}'} 51exec_prefix=${exec_prefix-'${prefix}'}
27libdir=${libdir-'${exec_prefix}/lib'} 52libdir=${libdir-'${exec_prefix}/lib'}
@@ -43,11 +68,11 @@ case "$1" in
43 echo ' configure [--zprefix] [--prefix=PREFIX] [--eprefix=EXPREFIX]' 68 echo ' configure [--zprefix] [--prefix=PREFIX] [--eprefix=EXPREFIX]'
44 echo ' [--static] [--64] [--libdir=LIBDIR] [--includedir=INCLUDEDIR]' 69 echo ' [--static] [--64] [--libdir=LIBDIR] [--includedir=INCLUDEDIR]'
45 exit 0 ;; 70 exit 0 ;;
46 -p*=* | --prefix=*) prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;; 71 -p*=* | --prefix=*) prefix=`echo $1 | sed 's/.*=//'`; shift ;;
47 -e*=* | --eprefix=*) exec_prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;; 72 -e*=* | --eprefix=*) exec_prefix=`echo $1 | sed 's/.*=//'`; shift ;;
48 -l*=* | --libdir=*) libdir=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;; 73 -l*=* | --libdir=*) libdir=`echo $1 | sed 's/.*=//'`; shift ;;
49 -i*=* | --includedir=*) includedir=`echo $1 | sed 's/[-a-z_]*=//'`;shift ;; 74 -i*=* | --includedir=*) includedir=`echo $1 | sed 's/.*=//'`;shift ;;
50 -u*=* | --uname=*) uname=`echo $1 | sed 's/[-a-z_]*=//'`;shift ;; 75 -u*=* | --uname=*) uname=`echo $1 | sed 's/.*=//'`;shift ;;
51 -p* | --prefix) prefix="$2"; shift; shift ;; 76 -p* | --prefix) prefix="$2"; shift; shift ;;
52 -e* | --eprefix) exec_prefix="$2"; shift; shift ;; 77 -e* | --eprefix) exec_prefix="$2"; shift; shift ;;
53 -l* | --libdir) libdir="$2"; shift; shift ;; 78 -l* | --libdir) libdir="$2"; shift; shift ;;
@@ -69,7 +94,7 @@ int hello() {return getchar();}
69EOF 94EOF
70 95
71test -z "$CC" && echo Checking for gcc... 96test -z "$CC" && echo Checking for gcc...
72cc=${CC-gcc} 97cc=${CC-${CROSS_PREFIX}gcc}
73cflags=${CFLAGS-"-O3"} 98cflags=${CFLAGS-"-O3"}
74# to force the asm version use: CFLAGS="-O3 -DASMV" ./configure 99# to force the asm version use: CFLAGS="-O3 -DASMV" ./configure
75case "$cc" in 100case "$cc" in
@@ -91,9 +116,12 @@ if test "$gcc" -eq 1 && ($cc -c $cflags $test.c) 2>/dev/null; then
91 uname=`(uname -s || echo unknown) 2>/dev/null` 116 uname=`(uname -s || echo unknown) 2>/dev/null`
92 fi 117 fi
93 case "$uname" in 118 case "$uname" in
94 Linux | linux | GNU | GNU/* | *BSD | DragonFly) LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map"} ;; 119 Linux* | linux* | GNU | GNU/* | *BSD | DragonFly) LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map"} ;;
95 CYGWIN* | Cygwin* | cygwin* | OS/2* ) 120 CYGWIN* | Cygwin* | cygwin* | OS/2*)
96 EXE='.exe' ;; 121 EXE='.exe' ;;
122 MINGW*)
123 LDSHAREDLIBC=""
124 EXE='.exe' ;;
97 QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4 125 QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4
98 # (alain.bonnefoy@icbt.com) 126 # (alain.bonnefoy@icbt.com)
99 LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;; 127 LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;;
@@ -474,18 +502,6 @@ EOF
474 fi 502 fi
475fi 503fi
476 504
477cat >$test.c <<EOF
478#include <errno.h>
479int main() { return 0; }
480EOF
481if test "`($CC -c $CFLAGS $test.c) 2>&1`" = ""; then
482 echo "Checking for errno.h... Yes."
483else
484 echo "Checking for errno.h... No."
485 CFLAGS="$CFLAGS -DNO_ERRNO_H"
486 SFLAGS="$SFLAGS -DNO_ERRNO_H"
487fi
488
489CPP=${CPP-"$CC -E"} 505CPP=${CPP-"$CC -E"}
490case $CFLAGS in 506case $CFLAGS in
491 *ASMV*) 507 *ASMV*)
@@ -513,6 +529,8 @@ sed < Makefile.in "
513/^SHAREDLIBM *=/s#=.*#=$SHAREDLIBM# 529/^SHAREDLIBM *=/s#=.*#=$SHAREDLIBM#
514/^AR *=/s#=.*#=$AR_RC# 530/^AR *=/s#=.*#=$AR_RC#
515/^RANLIB *=/s#=.*#=$RANLIB# 531/^RANLIB *=/s#=.*#=$RANLIB#
532/^LDCONFIG *=/s#=.*#=$LDCONFIG#
533/^LDSHAREDLIBC *=/s#=.*#=$LDSHAREDLIBC#
516/^EXE *=/s#=.*#=$EXE# 534/^EXE *=/s#=.*#=$EXE#
517/^prefix *=/s#=.*#=$prefix# 535/^prefix *=/s#=.*#=$prefix#
518/^exec_prefix *=/s#=.*#=$exec_prefix# 536/^exec_prefix *=/s#=.*#=$exec_prefix#
diff --git a/contrib/delphi/ZLib.pas b/contrib/delphi/ZLib.pas
index 179f9a9..03450e7 100644
--- a/contrib/delphi/ZLib.pas
+++ b/contrib/delphi/ZLib.pas
@@ -152,7 +152,7 @@ procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer;
152 const OutBuf: Pointer; BufSize: Integer); 152 const OutBuf: Pointer; BufSize: Integer);
153 153
154const 154const
155 zlib_version = '1.2.4'; 155 zlib_version = '1.2.4.1';
156 156
157type 157type
158 EZlibError = class(Exception); 158 EZlibError = class(Exception);
diff --git a/contrib/dotzlib/DotZLib/UnitTests.cs b/contrib/dotzlib/DotZLib/UnitTests.cs
index 42c4588..82c749e 100644
--- a/contrib/dotzlib/DotZLib/UnitTests.cs
+++ b/contrib/dotzlib/DotZLib/UnitTests.cs
@@ -156,7 +156,7 @@ namespace DotZLibTests
156 public void Info_Version() 156 public void Info_Version()
157 { 157 {
158 Info info = new Info(); 158 Info info = new Info();
159 Assert.AreEqual("1.2.4", Info.Version); 159 Assert.AreEqual("1.2.4.1", Info.Version);
160 Assert.AreEqual(32, info.SizeOfUInt); 160 Assert.AreEqual(32, info.SizeOfUInt);
161 Assert.AreEqual(32, info.SizeOfULong); 161 Assert.AreEqual(32, info.SizeOfULong);
162 Assert.AreEqual(32, info.SizeOfPointer); 162 Assert.AreEqual(32, info.SizeOfPointer);
diff --git a/contrib/infback9/inftree9.c b/contrib/infback9/inftree9.c
index 510bba6..e898893 100644
--- a/contrib/infback9/inftree9.c
+++ b/contrib/infback9/inftree9.c
@@ -9,7 +9,7 @@
9#define MAXBITS 15 9#define MAXBITS 15
10 10
11const char inflate9_copyright[] = 11const char inflate9_copyright[] =
12 " inflate9 1.2.4 Copyright 1995-2010 Mark Adler "; 12 " inflate9 1.2.4.1 Copyright 1995-2010 Mark Adler ";
13/* 13/*
14 If you use the zlib library in a product, an acknowledgment is welcome 14 If you use the zlib library in a product, an acknowledgment is welcome
15 in the documentation of your product. If for some reason you cannot 15 in the documentation of your product. If for some reason you cannot
@@ -64,7 +64,7 @@ unsigned short FAR *work;
64 static const unsigned short lext[31] = { /* Length codes 257..285 extra */ 64 static const unsigned short lext[31] = { /* Length codes 257..285 extra */
65 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 65 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129,
66 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132, 66 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132,
67 133, 133, 133, 133, 144, 64, 195}; 67 133, 133, 133, 133, 144, 67, 206};
68 static const unsigned short dbase[32] = { /* Distance codes 0..31 base */ 68 static const unsigned short dbase[32] = { /* Distance codes 0..31 base */
69 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 69 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49,
70 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 70 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073,
diff --git a/contrib/pascal/zlibpas.pas b/contrib/pascal/zlibpas.pas
index dc7d37d..9772f11 100644
--- a/contrib/pascal/zlibpas.pas
+++ b/contrib/pascal/zlibpas.pas
@@ -10,7 +10,7 @@ unit zlibpas;
10interface 10interface
11 11
12const 12const
13 ZLIB_VERSION = '1.2.4'; 13 ZLIB_VERSION = '1.2.4.1';
14 14
15type 15type
16 alloc_func = function(opaque: Pointer; items, size: Integer): Pointer; 16 alloc_func = function(opaque: Pointer; items, size: Integer): Pointer;
diff --git a/contrib/vstudio/vc10/zlib.rc b/contrib/vstudio/vc10/zlib.rc
index 23802d8..d6b9991 100644
--- a/contrib/vstudio/vc10/zlib.rc
+++ b/contrib/vstudio/vc10/zlib.rc
@@ -2,8 +2,8 @@
2 2
3#define IDR_VERSION1 1 3#define IDR_VERSION1 1
4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE 4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
5 FILEVERSION 1,2,4,0 5 FILEVERSION 1,2,4,1
6 PRODUCTVERSION 1,2,4,0 6 PRODUCTVERSION 1,2,4,1
7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK 7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
8 FILEFLAGS 0 8 FILEFLAGS 0
9 FILEOS VOS_DOS_WINDOWS32 9 FILEOS VOS_DOS_WINDOWS32
@@ -17,7 +17,7 @@ BEGIN
17 17
18 BEGIN 18 BEGIN
19 VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" 19 VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
20 VALUE "FileVersion", "1.2.4.0\0" 20 VALUE "FileVersion", "1.2.4.1\0"
21 VALUE "InternalName", "zlib\0" 21 VALUE "InternalName", "zlib\0"
22 VALUE "OriginalFilename", "zlib.dll\0" 22 VALUE "OriginalFilename", "zlib.dll\0"
23 VALUE "ProductName", "ZLib.DLL\0" 23 VALUE "ProductName", "ZLib.DLL\0"
diff --git a/contrib/vstudio/vc9/zlib.rc b/contrib/vstudio/vc9/zlib.rc
index 23802d8..d6b9991 100644
--- a/contrib/vstudio/vc9/zlib.rc
+++ b/contrib/vstudio/vc9/zlib.rc
@@ -2,8 +2,8 @@
2 2
3#define IDR_VERSION1 1 3#define IDR_VERSION1 1
4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE 4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
5 FILEVERSION 1,2,4,0 5 FILEVERSION 1,2,4,1
6 PRODUCTVERSION 1,2,4,0 6 PRODUCTVERSION 1,2,4,1
7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK 7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
8 FILEFLAGS 0 8 FILEFLAGS 0
9 FILEOS VOS_DOS_WINDOWS32 9 FILEOS VOS_DOS_WINDOWS32
@@ -17,7 +17,7 @@ BEGIN
17 17
18 BEGIN 18 BEGIN
19 VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" 19 VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
20 VALUE "FileVersion", "1.2.4.0\0" 20 VALUE "FileVersion", "1.2.4.1\0"
21 VALUE "InternalName", "zlib\0" 21 VALUE "InternalName", "zlib\0"
22 VALUE "OriginalFilename", "zlib.dll\0" 22 VALUE "OriginalFilename", "zlib.dll\0"
23 VALUE "ProductName", "ZLib.DLL\0" 23 VALUE "ProductName", "ZLib.DLL\0"
diff --git a/crc32.c b/crc32.c
index 1acc7ed..6b81fb4 100644
--- a/crc32.c
+++ b/crc32.c
@@ -221,7 +221,7 @@ const unsigned long FAR * ZEXPORT get_crc_table()
221unsigned long ZEXPORT crc32(crc, buf, len) 221unsigned long ZEXPORT crc32(crc, buf, len)
222 unsigned long crc; 222 unsigned long crc;
223 const unsigned char FAR *buf; 223 const unsigned char FAR *buf;
224 unsigned len; 224 uInt len;
225{ 225{
226 if (buf == Z_NULL) return 0UL; 226 if (buf == Z_NULL) return 0UL;
227 227
diff --git a/deflate.c b/deflate.c
index fcd698c..b7fb9fc 100644
--- a/deflate.c
+++ b/deflate.c
@@ -52,7 +52,7 @@
52#include "deflate.h" 52#include "deflate.h"
53 53
54const char deflate_copyright[] = 54const char deflate_copyright[] =
55 " deflate 1.2.4 Copyright 1995-2010 Jean-loup Gailly and Mark Adler "; 55 " deflate 1.2.4.1 Copyright 1995-2010 Jean-loup Gailly and Mark Adler ";
56/* 56/*
57 If you use the zlib library in a product, an acknowledgment is welcome 57 If you use the zlib library in a product, an acknowledgment is welcome
58 in the documentation of your product. If for some reason you cannot 58 in the documentation of your product. If for some reason you cannot
diff --git a/gzguts.h b/gzguts.h
index 0e7ed43..53857e0 100644
--- a/gzguts.h
+++ b/gzguts.h
@@ -3,9 +3,9 @@
3 * For conditions of distribution and use, see copyright notice in zlib.h 3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */ 4 */
5 5
6#ifdef _LARGEFILE64_SOURCE 6#if _LARGEFILE64_SOURCE == 1
7# ifndef _LARGEFILE_SOURCE 7# ifndef _LARGEFILE_SOURCE
8# define _LARGEFILE_SOURCE 8# define _LARGEFILE_SOURCE 1
9# endif 9# endif
10# ifdef _FILE_OFFSET_BITS 10# ifdef _FILE_OFFSET_BITS
11# undef _FILE_OFFSET_BITS 11# undef _FILE_OFFSET_BITS
@@ -44,7 +44,7 @@
44#endif 44#endif
45 45
46/* get errno and strerror definition */ 46/* get errno and strerror definition */
47#if defined UNDER_CE && defined NO_ERRNO_H 47#if defined UNDER_CE
48# include <windows.h> 48# include <windows.h>
49# define zstrerror() gz_strwinerror((DWORD)GetLastError()) 49# define zstrerror() gz_strwinerror((DWORD)GetLastError())
50#else 50#else
@@ -56,13 +56,7 @@
56# endif 56# endif
57#endif 57#endif
58 58
59/* MVS fdopen() */ 59#if _LARGEFILE64_SOURCE == 1
60#ifdef __MVS__
61 #pragma map (fdopen , "\174\174FDOPEN")
62 FILE *fdopen(int, const char *);
63#endif
64
65#ifdef _LARGEFILE64_SOURCE
66# define z_off64_t off64_t 60# define z_off64_t off64_t
67#else 61#else
68# define z_off64_t z_off_t 62# define z_off64_t z_off_t
@@ -117,7 +111,7 @@ typedef gz_state FAR *gz_statep;
117 111
118/* shared functions */ 112/* shared functions */
119ZEXTERN void ZEXPORT gz_error OF((gz_statep, int, const char *)); 113ZEXTERN void ZEXPORT gz_error OF((gz_statep, int, const char *));
120#if defined UNDER_CE && defined NO_ERRNO_H 114#if defined UNDER_CE
121ZEXTERN char ZEXPORT *gz_strwinerror OF((DWORD error)); 115ZEXTERN char ZEXPORT *gz_strwinerror OF((DWORD error));
122#endif 116#endif
123 117
diff --git a/gzlib.c b/gzlib.c
index 6fdb08a..15999ae 100644
--- a/gzlib.c
+++ b/gzlib.c
@@ -5,7 +5,7 @@
5 5
6#include "gzguts.h" 6#include "gzguts.h"
7 7
8#ifdef _LARGEFILE64_SOURCE 8#if _LARGEFILE64_SOURCE == 1 && _LFS64_LARGEFILE == 1
9# define LSEEK lseek64 9# define LSEEK lseek64
10#else 10#else
11# define LSEEK lseek 11# define LSEEK lseek
@@ -15,7 +15,7 @@
15local void gz_reset OF((gz_statep)); 15local void gz_reset OF((gz_statep));
16local gzFile gz_open OF((const char *, int, const char *)); 16local gzFile gz_open OF((const char *, int, const char *));
17 17
18#if defined UNDER_CE && defined NO_ERRNO_H 18#if defined UNDER_CE
19 19
20/* Map the Windows error number in ERROR to a locale-dependent error message 20/* Map the Windows error number in ERROR to a locale-dependent error message
21 string and return a pointer to it. Typically, the values for ERROR come 21 string and return a pointer to it. Typically, the values for ERROR come
@@ -65,7 +65,7 @@ char ZEXPORT *gz_strwinerror (error)
65 return buf; 65 return buf;
66} 66}
67 67
68#endif /* UNDER_CE && NO_ERRNO_H */ 68#endif /* UNDER_CE */
69 69
70/* Reset gzip file state */ 70/* Reset gzip file state */
71local void gz_reset(state) 71local void gz_reset(state)
@@ -217,7 +217,7 @@ gzFile ZEXPORT gzdopen(fd, mode)
217 217
218 if (fd == -1 || (path = malloc(7 + 3 * sizeof(int))) == NULL) 218 if (fd == -1 || (path = malloc(7 + 3 * sizeof(int))) == NULL)
219 return NULL; 219 return NULL;
220 sprintf(path, "<fd:%d>", fd); 220 sprintf(path, "<fd:%d>", fd); /* for debugging */
221 gz = gz_open(path, fd, mode); 221 gz = gz_open(path, fd, mode);
222 free(path); 222 free(path);
223 return gz; 223 return gz;
@@ -305,7 +305,7 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
305 /* if within raw area while reading, just go there */ 305 /* if within raw area while reading, just go there */
306 if (state->mode == GZ_READ && state->how == COPY && 306 if (state->mode == GZ_READ && state->how == COPY &&
307 state->pos + offset >= state->raw) { 307 state->pos + offset >= state->raw) {
308 ret = LSEEK(state->fd, offset, SEEK_CUR); 308 ret = LSEEK(state->fd, offset - state->have, SEEK_CUR);
309 if (ret == -1) 309 if (ret == -1)
310 return -1; 310 return -1;
311 state->have = 0; 311 state->have = 0;
diff --git a/gzread.c b/gzread.c
index 434ef02..548201a 100644
--- a/gzread.c
+++ b/gzread.c
@@ -55,7 +55,8 @@ local int gz_avail(state)
55 if (state->err != Z_OK) 55 if (state->err != Z_OK)
56 return -1; 56 return -1;
57 if (state->eof == 0) { 57 if (state->eof == 0) {
58 if (gz_load(state, state->in, state->size, &(strm->avail_in)) == -1) 58 if (gz_load(state, state->in, state->size,
59 (unsigned *)&(strm->avail_in)) == -1)
59 return -1; 60 return -1;
60 strm->next_in = state->in; 61 strm->next_in = state->in;
61 } 62 }
diff --git a/inftrees.c b/inftrees.c
index ccf7fa9..90de8b8 100644
--- a/inftrees.c
+++ b/inftrees.c
@@ -9,7 +9,7 @@
9#define MAXBITS 15 9#define MAXBITS 15
10 10
11const char inflate_copyright[] = 11const char inflate_copyright[] =
12 " inflate 1.2.4 Copyright 1995-2010 Mark Adler "; 12 " inflate 1.2.4.1 Copyright 1995-2010 Mark Adler ";
13/* 13/*
14 If you use the zlib library in a product, an acknowledgment is welcome 14 If you use the zlib library in a product, an acknowledgment is welcome
15 in the documentation of your product. If for some reason you cannot 15 in the documentation of your product. If for some reason you cannot
@@ -62,7 +62,7 @@ unsigned short FAR *work;
62 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; 62 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
63 static const unsigned short lext[31] = { /* Length codes 257..285 extra */ 63 static const unsigned short lext[31] = { /* Length codes 257..285 extra */
64 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 64 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
65 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 64, 195}; 65 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 67, 206};
66 static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ 66 static const unsigned short dbase[32] = { /* Distance codes 0..29 base */
67 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 67 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
68 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 68 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
diff --git a/minigzip.c b/minigzip.c
index 84d823b..9677fa0 100644
--- a/minigzip.c
+++ b/minigzip.c
@@ -54,7 +54,7 @@
54 extern int unlink OF((const char *)); 54 extern int unlink OF((const char *));
55#endif 55#endif
56 56
57#if defined(UNDER_CE) && defined(NO_ERRNO_H) 57#if defined(UNDER_CE)
58# include <windows.h> 58# include <windows.h>
59# define perror(s) pwinerror(s) 59# define perror(s) pwinerror(s)
60 60
@@ -116,7 +116,7 @@ static void pwinerror (s)
116 fprintf(stderr, "%s\n", strwinerror(GetLastError ())); 116 fprintf(stderr, "%s\n", strwinerror(GetLastError ()));
117} 117}
118 118
119#endif /* UNDER_CE && NO_ERRNO_H */ 119#endif /* UNDER_CE */
120 120
121#ifndef GZ_SUFFIX 121#ifndef GZ_SUFFIX
122# define GZ_SUFFIX ".gz" 122# define GZ_SUFFIX ".gz"
diff --git a/qnx/package.qpg b/qnx/package.qpg
index 470d2d5..bf3433a 100644
--- a/qnx/package.qpg
+++ b/qnx/package.qpg
@@ -25,10 +25,10 @@
25 <QPG:Files> 25 <QPG:Files>
26 <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/> 26 <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/>
27 <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/> 27 <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/>
28 <QPG:Add file="../libz.so.1.2.4" install="/opt/lib/" user="root:bin" permission="644"/> 28 <QPG:Add file="../libz.so.1.2.4.1" install="/opt/lib/" user="root:bin" permission="644"/>
29 <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.4"/> 29 <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.4.1"/>
30 <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.4"/> 30 <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.4.1"/>
31 <QPG:Add file="../libz.so.1.2.4" install="/opt/lib/" component="slib"/> 31 <QPG:Add file="../libz.so.1.2.4.1" install="/opt/lib/" component="slib"/>
32 </QPG:Files> 32 </QPG:Files>
33 33
34 <QPG:PackageFilter> 34 <QPG:PackageFilter>
@@ -63,7 +63,7 @@
63 </QPM:ProductDescription> 63 </QPM:ProductDescription>
64 64
65 <QPM:ReleaseDescription> 65 <QPM:ReleaseDescription>
66 <QPM:ReleaseVersion>1.2.4</QPM:ReleaseVersion> 66 <QPM:ReleaseVersion>1.2.4.1</QPM:ReleaseVersion>
67 <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency> 67 <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency>
68 <QPM:ReleaseStability>Stable</QPM:ReleaseStability> 68 <QPM:ReleaseStability>Stable</QPM:ReleaseStability>
69 <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor> 69 <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor>
diff --git a/treebuild.xml b/treebuild.xml
index 91ee891..e30532e 100644
--- a/treebuild.xml
+++ b/treebuild.xml
@@ -1,6 +1,6 @@
1<?xml version="1.0" ?> 1<?xml version="1.0" ?>
2<package name="zlib" version="1.2.4"> 2<package name="zlib" version="1.2.4.1">
3 <library name="zlib" dlversion="1.2.4" dlname="z"> 3 <library name="zlib" dlversion="1.2.4.1" dlname="z">
4 <property name="description"> zip compression library </property> 4 <property name="description"> zip compression library </property>
5 <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> 5 <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" />
6 6
diff --git a/win32/Makefile.gcc b/win32/Makefile.gcc
index abe3d5a..0e16190 100644
--- a/win32/Makefile.gcc
+++ b/win32/Makefile.gcc
@@ -30,7 +30,8 @@ IMPLIB = libzdll.a
30#LOC = -DASMV 30#LOC = -DASMV
31#LOC = -DDEBUG -g 31#LOC = -DDEBUG -g
32 32
33CC = gcc 33PREFIX =
34CC = $(PREFIX)gcc
34CFLAGS = $(LOC) -O3 -Wall 35CFLAGS = $(LOC) -O3 -Wall
35 36
36AS = $(CC) 37AS = $(CC)
@@ -39,13 +40,13 @@ ASFLAGS = $(LOC) -Wall
39LD = $(CC) 40LD = $(CC)
40LDFLAGS = $(LOC) -s 41LDFLAGS = $(LOC) -s
41 42
42AR = ar 43AR = $(PREFIX)ar
43ARFLAGS = rcs 44ARFLAGS = rcs
44 45
45RC = windres 46RC = $(PREFIX)windres
46RCFLAGS = --define GCC_WINDRES 47RCFLAGS = --define GCC_WINDRES
47 48
48STRIP = strip 49STRIP = $(PREFIX)strip
49 50
50CP = cp -fp 51CP = cp -fp
51# If GNU install is available, replace $(CP) with install. 52# If GNU install is available, replace $(CP) with install.
@@ -106,8 +107,8 @@ zlibrc.o: win32/zlib1.rc
106.PHONY: install uninstall clean 107.PHONY: install uninstall clean
107 108
108install: zlib.h zconf.h $(LIB) 109install: zlib.h zconf.h $(LIB)
109 -@if not exist $(INCLUDE_PATH)/nul mkdir $(INCLUDE_PATH) 110 -@mkdir -p $(INCLUDE_PATH)
110 -@if not exist $(LIBRARY_PATH)/nul mkdir $(LIBRARY_PATH) 111 -@mkdir -p $(LIBRARY_PATH)
111 -$(INSTALL) zlib.h $(INCLUDE_PATH) 112 -$(INSTALL) zlib.h $(INCLUDE_PATH)
112 -$(INSTALL) zconf.h $(INCLUDE_PATH) 113 -$(INSTALL) zconf.h $(INCLUDE_PATH)
113 -$(INSTALL) $(STATICLIB) $(LIBRARY_PATH) 114 -$(INSTALL) $(STATICLIB) $(LIBRARY_PATH)
diff --git a/win32/README-WIN32.txt b/win32/README-WIN32.txt
new file mode 100644
index 0000000..35062cd
--- /dev/null
+++ b/win32/README-WIN32.txt
@@ -0,0 +1,103 @@
1ZLIB DATA COMPRESSION LIBRARY
2
3zlib 1.2.4 is a general purpose data compression library. All the code is
4thread safe. The data format used by the zlib library is described by RFCs
5(Request for Comments) 1950 to 1952 in the files
6http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
7and rfc1952.txt (gzip format).
8
9All functions of the compression library are documented in the file zlib.h
10(volunteer to write man pages welcome, contact zlib@gzip.org). Two compiled
11examples are distributed in this package, example and minigzip. The example_d
12and minigzip_d flavors validate that the zlib1.dll file is working correctly.
13
14Questions about zlib should be sent to <zlib@gzip.org>. The zlib home page
15is http://zlib.net/ . Before reporting a problem, please check this site to
16verify that you have the latest version of zlib; otherwise get the latest
17version and check whether the problem still exists or not.
18
19PLEASE read DLL_FAQ.txt, and the the zlib FAQ http://zlib.net/zlib_faq.html
20before asking for help.
21
22
23Manifest:
24
25The package zlib-1.2.4-win32-x86.zip contains the following files:
26
27 README-WIN32.txt This document
28 ChangeLog Changes since previous zlib packages
29 DLL_FAQ.txt Frequently asked questions about zlib1.dll
30 zlib.3.pdf Documentation of this library in Adobe Acrobat format
31
32 example.exe A statically-bound example (using zlib.lib, not the dll)
33 example.pdb Symbolic information for debugging example.exe
34
35 example_d.exe A zlib1.dll bound example (using zdll.lib)
36 example_d.pdb Symbolic information for debugging example_d.exe
37
38 minigzip.exe A statically-bound test program (using zlib.lib, not the dll)
39 minigzip.pdb Symbolic information for debugging minigzip.exe
40
41 minigzip_d.exe A zlib1.dll bound test program (using zdll.lib)
42 minigzip_d.pdb Symbolic information for debugging minigzip_d.exe
43
44 zlib.h Install these files into the compilers' INCLUDE path to
45 zconf.h compile programs which use zlib.lib or zdll.lib
46
47 zdll.lib Install these files into the compilers' LIB path if linking
48 zdll.exp a compiled program to the zlib1.dll binary
49
50 zlib.lib Install these files into the compilers' LIB path if linking
51 zlib.pdb a compiled program to the zlib1.dll binary (zlib.pdb ensures
52 that the resulting program may be debugged)
53
54 zlib1.dll Install this binary shared library into the system PATH, or
55 the program's runtime directory (where the .exe resides)
56 zlib1.pdb Install in the same directory as zlib1.dll, in order to debug
57 an application crash using WinDbg or similar tools.
58
59All .pdb files above are entirely optional, but are very useful to a developer
60attempting to diagnose program misbehavior or a crash. Many additional
61important files for developers can be found in the zlib124.zip source package
62available from http://zlib.net/ - review that package's README file for details.
63
64
65Acknowledgments:
66
67The deflate format used by zlib was defined by Phil Katz. The deflate and
68zlib specifications were written by L. Peter Deutsch. Thanks to all the
69people who reported problems and suggested various improvements in zlib; they
70are too numerous to cite here.
71
72
73Copyright notice:
74
75 (C) 1995-2010 Jean-loup Gailly and Mark Adler
76
77 This software is provided 'as-is', without any express or implied
78 warranty. In no event will the authors be held liable for any damages
79 arising from the use of this software.
80
81 Permission is granted to anyone to use this software for any purpose,
82 including commercial applications, and to alter it and redistribute it
83 freely, subject to the following restrictions:
84
85 1. The origin of this software must not be misrepresented; you must not
86 claim that you wrote the original software. If you use this software
87 in a product, an acknowledgment in the product documentation would be
88 appreciated but is not required.
89 2. Altered source versions must be plainly marked as such, and must not be
90 misrepresented as being the original software.
91 3. This notice may not be removed or altered from any source distribution.
92
93 Jean-loup Gailly Mark Adler
94 jloup@gzip.org madler@alumni.caltech.edu
95
96If you use the zlib library in a product, we would appreciate *not* receiving
97lengthy legal documents to sign. The sources are provided for free but without
98warranty of any kind. The library has been entirely written by Jean-loup
99Gailly and Mark Adler; it does not include third-party code.
100
101If you redistribute modified sources, we would appreciate that you include in
102the file ChangeLog history information documenting your changes. Please read
103the FAQ for more information on the distribution of modified source versions.
diff --git a/zconf.h b/zconf.h
index 5888024..6ad8a04 100644
--- a/zconf.h
+++ b/zconf.h
@@ -364,7 +364,7 @@ typedef uLong FAR uLongf;
364# define Z_HAVE_UNISTD_H 364# define Z_HAVE_UNISTD_H
365#endif 365#endif
366 366
367#ifdef Z_HAVE_UNISTD_H 367#if defined(Z_HAVE_UNISTD_H) || _LARGEFILE64_SOURCE == 1
368# include <sys/types.h> /* for off_t */ 368# include <sys/types.h> /* for off_t */
369# include <unistd.h> /* for SEEK_* and off_t */ 369# include <unistd.h> /* for SEEK_* and off_t */
370# ifdef VMS 370# ifdef VMS
@@ -375,15 +375,12 @@ typedef uLong FAR uLongf;
375# endif 375# endif
376#endif 376#endif
377 377
378#ifdef _LARGEFILE64_SOURCE
379# include <sys/types.h>
380#endif
381
382#ifndef SEEK_SET 378#ifndef SEEK_SET
383# define SEEK_SET 0 /* Seek from beginning of file. */ 379# define SEEK_SET 0 /* Seek from beginning of file. */
384# define SEEK_CUR 1 /* Seek from current position. */ 380# define SEEK_CUR 1 /* Seek from current position. */
385# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 381# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
386#endif 382#endif
383
387#ifndef z_off_t 384#ifndef z_off_t
388# define z_off_t long 385# define z_off_t long
389#endif 386#endif
diff --git a/zconf.h.cmakein b/zconf.h.cmakein
index eec8ab0..fcd5710 100644
--- a/zconf.h.cmakein
+++ b/zconf.h.cmakein
@@ -366,7 +366,7 @@ typedef uLong FAR uLongf;
366# define Z_HAVE_UNISTD_H 366# define Z_HAVE_UNISTD_H
367#endif 367#endif
368 368
369#ifdef Z_HAVE_UNISTD_H 369#if defined(Z_HAVE_UNISTD_H) || _LARGEFILE64_SOURCE == 1
370# include <sys/types.h> /* for off_t */ 370# include <sys/types.h> /* for off_t */
371# include <unistd.h> /* for SEEK_* and off_t */ 371# include <unistd.h> /* for SEEK_* and off_t */
372# ifdef VMS 372# ifdef VMS
@@ -377,15 +377,12 @@ typedef uLong FAR uLongf;
377# endif 377# endif
378#endif 378#endif
379 379
380#ifdef _LARGEFILE64_SOURCE
381# include <sys/types.h>
382#endif
383
384#ifndef SEEK_SET 380#ifndef SEEK_SET
385# define SEEK_SET 0 /* Seek from beginning of file. */ 381# define SEEK_SET 0 /* Seek from beginning of file. */
386# define SEEK_CUR 1 /* Seek from current position. */ 382# define SEEK_CUR 1 /* Seek from current position. */
387# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 383# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
388#endif 384#endif
385
389#ifndef z_off_t 386#ifndef z_off_t
390# define z_off_t long 387# define z_off_t long
391#endif 388#endif
diff --git a/zconf.h.in b/zconf.h.in
index 5888024..6ad8a04 100644
--- a/zconf.h.in
+++ b/zconf.h.in
@@ -364,7 +364,7 @@ typedef uLong FAR uLongf;
364# define Z_HAVE_UNISTD_H 364# define Z_HAVE_UNISTD_H
365#endif 365#endif
366 366
367#ifdef Z_HAVE_UNISTD_H 367#if defined(Z_HAVE_UNISTD_H) || _LARGEFILE64_SOURCE == 1
368# include <sys/types.h> /* for off_t */ 368# include <sys/types.h> /* for off_t */
369# include <unistd.h> /* for SEEK_* and off_t */ 369# include <unistd.h> /* for SEEK_* and off_t */
370# ifdef VMS 370# ifdef VMS
@@ -375,15 +375,12 @@ typedef uLong FAR uLongf;
375# endif 375# endif
376#endif 376#endif
377 377
378#ifdef _LARGEFILE64_SOURCE
379# include <sys/types.h>
380#endif
381
382#ifndef SEEK_SET 378#ifndef SEEK_SET
383# define SEEK_SET 0 /* Seek from beginning of file. */ 379# define SEEK_SET 0 /* Seek from beginning of file. */
384# define SEEK_CUR 1 /* Seek from current position. */ 380# define SEEK_CUR 1 /* Seek from current position. */
385# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 381# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
386#endif 382#endif
383
387#ifndef z_off_t 384#ifndef z_off_t
388# define z_off_t long 385# define z_off_t long
389#endif 386#endif
diff --git a/zlib.3 b/zlib.3
index 52999c7..2c1679d 100644
--- a/zlib.3
+++ b/zlib.3
@@ -1,4 +1,4 @@
1.TH ZLIB 3 "14 March 2010" 1.TH ZLIB 3 "28 Mar 2010"
2.SH NAME 2.SH NAME
3zlib \- compression/decompression library 3zlib \- compression/decompression library
4.SH SYNOPSIS 4.SH SYNOPSIS
@@ -125,7 +125,7 @@ before asking for help.
125Send questions and/or comments to zlib@gzip.org, 125Send questions and/or comments to zlib@gzip.org,
126or (for the Windows DLL version) to Gilles Vollant (info@winimage.com). 126or (for the Windows DLL version) to Gilles Vollant (info@winimage.com).
127.SH AUTHORS 127.SH AUTHORS
128Version 1.2.4 128Version 1.2.4.1
129Copyright (C) 1995-2010 Jean-loup Gailly (jloup@gzip.org) 129Copyright (C) 1995-2010 Jean-loup Gailly (jloup@gzip.org)
130and Mark Adler (madler@alumni.caltech.edu). 130and Mark Adler (madler@alumni.caltech.edu).
131.LP 131.LP
diff --git a/zlib.3.pdf b/zlib.3.pdf
index 05ed2d0..0d63b20 100644
--- a/zlib.3.pdf
+++ b/zlib.3.pdf
Binary files differ
diff --git a/zlib.h b/zlib.h
index f5785be..1fcf630 100644
--- a/zlib.h
+++ b/zlib.h
@@ -1,5 +1,5 @@
1/* zlib.h -- interface of the 'zlib' general purpose compression library 1/* zlib.h -- interface of the 'zlib' general purpose compression library
2 version 1.2.4, Mar 14th, 2010 2 version 1.2.4.1, March 28th, 2010
3 3
4 Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler 4 Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
5 5
@@ -37,12 +37,12 @@
37extern "C" { 37extern "C" {
38#endif 38#endif
39 39
40#define ZLIB_VERSION "1.2.4" 40#define ZLIB_VERSION "1.2.4.1"
41#define ZLIB_VERNUM 0x1240 41#define ZLIB_VERNUM 0x1241
42#define ZLIB_VER_MAJOR 1 42#define ZLIB_VER_MAJOR 1
43#define ZLIB_VER_MINOR 2 43#define ZLIB_VER_MINOR 2
44#define ZLIB_VER_REVISION 4 44#define ZLIB_VER_REVISION 4
45#define ZLIB_VER_SUBREVISION 0 45#define ZLIB_VER_SUBREVISION 1
46 46
47/* 47/*
48 The 'zlib' compression library provides in-memory compression and 48 The 'zlib' compression library provides in-memory compression and
@@ -1556,7 +1556,7 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits,
1556 inflateBackInit_((strm), (windowBits), (window), \ 1556 inflateBackInit_((strm), (windowBits), (window), \
1557 ZLIB_VERSION, sizeof(z_stream)) 1557 ZLIB_VERSION, sizeof(z_stream))
1558 1558
1559#ifdef _LARGEFILE64_SOURCE 1559#if _LARGEFILE64_SOURCE == 1 && _LFS64_LARGEFILE == 1
1560 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); 1560 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
1561 ZEXTERN off64_t ZEXPORT gzseek64 OF((gzFile, off64_t, int)); 1561 ZEXTERN off64_t ZEXPORT gzseek64 OF((gzFile, off64_t, int));
1562 ZEXTERN off64_t ZEXPORT gztell64 OF((gzFile)); 1562 ZEXTERN off64_t ZEXPORT gztell64 OF((gzFile));
@@ -1565,14 +1565,14 @@ ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits,
1565 ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, off64_t)); 1565 ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, off64_t));
1566#endif 1566#endif
1567 1567
1568#if !defined(ZLIB_INTERNAL) && _FILE_OFFSET_BITS == 64 1568#if !defined(ZLIB_INTERNAL) && _FILE_OFFSET_BITS == 64 && _LFS64_LARGEFILE == 1
1569# define gzopen gzopen64 1569# define gzopen gzopen64
1570# define gzseek gzseek64 1570# define gzseek gzseek64
1571# define gztell gztell64 1571# define gztell gztell64
1572# define gzoffset gzoffset64 1572# define gzoffset gzoffset64
1573# define adler32_combine adler32_combine64 1573# define adler32_combine adler32_combine64
1574# define crc32_combine crc32_combine64 1574# define crc32_combine crc32_combine64
1575# ifndef _LARGEFILE64_SOURCE 1575# if _LARGEFILE64_SOURCE != 1
1576 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); 1576 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
1577 ZEXTERN off_t ZEXPORT gzseek64 OF((gzFile, off_t, int)); 1577 ZEXTERN off_t ZEXPORT gzseek64 OF((gzFile, off_t, int));
1578 ZEXTERN off_t ZEXPORT gztell64 OF((gzFile)); 1578 ZEXTERN off_t ZEXPORT gztell64 OF((gzFile));
diff --git a/zutil.c b/zutil.c
index 98a55a8..6ba16f6 100644
--- a/zutil.c
+++ b/zutil.c
@@ -272,7 +272,7 @@ void zcfree (voidpf opaque, voidpf ptr)
272# define _hfree hfree 272# define _hfree hfree
273#endif 273#endif
274 274
275voidpf zcalloc (voidpf opaque, unsigned items, unsigned size) 275voidpf zcalloc (voidpf opaque, uInt items, uInt size)
276{ 276{
277 if (opaque) opaque = 0; /* to make compiler happy */ 277 if (opaque) opaque = 0; /* to make compiler happy */
278 return _halloc((long)items, size); 278 return _halloc((long)items, size);
diff --git a/zutil.h b/zutil.h
index 025035d..b21a19c 100644
--- a/zutil.h
+++ b/zutil.h
@@ -24,19 +24,6 @@
24# include <stdlib.h> 24# include <stdlib.h>
25#endif 25#endif
26 26
27#if defined(UNDER_CE) && defined(NO_ERRNO_H)
28# define zseterrno(ERR) SetLastError((DWORD)(ERR))
29# define zerrno() ((int)GetLastError())
30#else
31# ifdef NO_ERRNO_H
32 extern int errno;
33# else
34# include <errno.h>
35# endif
36# define zseterrno(ERR) do { errno = (ERR); } while (0)
37# define zerrno() errno
38#endif
39
40#ifndef local 27#ifndef local
41# define local static 28# define local static
42#endif 29#endif
@@ -167,12 +154,22 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
167 #pragma warn -8066 154 #pragma warn -8066
168#endif 155#endif
169 156
170#ifdef _LARGEFILE64_SOURCE 157#if _LARGEFILE64_SOURCE == 1 && _LFS64_LARGEFILE == 1
171# define z_off64_t off64_t 158# define z_off64_t off64_t
172#else 159#else
173# define z_off64_t z_off_t 160# define z_off64_t z_off_t
174#endif 161#endif
175 162
163/* provide prototypes for these when building zlib without LFS */
164#if _LARGEFILE64_SOURCE != 1 || _LFS64_LARGEFILE != 1
165 ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
166 ZEXTERN off_t ZEXPORT gzseek64 OF((gzFile, off_t, int));
167 ZEXTERN off_t ZEXPORT gztell64 OF((gzFile));
168 ZEXTERN off_t ZEXPORT gzoffset64 OF((gzFile));
169 ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, off_t));
170 ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, off_t));
171#endif
172
176 /* common defaults */ 173 /* common defaults */
177 174
178#ifndef OS_CODE 175#ifndef OS_CODE
@@ -183,12 +180,6 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
183# define F_OPEN(name, mode) fopen((name), (mode)) 180# define F_OPEN(name, mode) fopen((name), (mode))
184#endif 181#endif
185 182
186#ifdef _LARGEFILE64_SOURCE
187# define F_OPEN64(name, mode) fopen64((name), (mode))
188#else
189# define F_OPEN64(name, mode) fopen((name), (mode))
190#endif
191
192 /* functions */ 183 /* functions */
193 184
194#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550) 185#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550)