Skip to content
This repository was archived by the owner on Jan 26, 2026. It is now read-only.

Commit eeef898

Browse files
committed
Merge commit '09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851'
2 parents 094bb40 + 09155ea commit eeef898

90 files changed

Lines changed: 2260 additions & 3330 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/cmake.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ jobs:
5454

5555
- name: macOS GCC
5656
os: macos-latest
57-
compiler: gcc-9
57+
compiler: gcc-11
5858

5959
steps:
6060
- name: Checkout repository

.github/workflows/configure.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ jobs:
8585

8686
- name: macOS GCC
8787
os: macos-latest
88-
compiler: gcc-9
88+
compiler: gcc-11
8989
configure-args: --warn
9090

9191
- name: macOS Clang

CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
cmake_minimum_required(VERSION 2.4.4)
1+
cmake_minimum_required(VERSION 2.4.4...3.15.0)
22
set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
33

44
project(zlib C)
55

6-
set(VERSION "1.2.13")
6+
set(VERSION "1.3")
77

88
set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables")
99
set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries")

ChangeLog

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,24 @@
11

22
ChangeLog file for zlib
33

4+
Changes in 1.3 (18 Aug 2023)
5+
- Remove K&R function definitions and zlib2ansi
6+
- Fix bug in deflateBound() for level 0 and memLevel 9
7+
- Fix bug when gzungetc() is used immediately after gzopen()
8+
- Fix bug when using gzflush() with a very small buffer
9+
- Fix crash when gzsetparams() attempted for transparent write
10+
- Fix test/example.c to work with FORCE_STORED
11+
- Rewrite of zran in examples (see zran.c version history)
12+
- Fix minizip to allow it to open an empty zip file
13+
- Fix reading disk number start on zip64 files in minizip
14+
- Fix logic error in minizip argument processing
15+
- Add minizip testing to Makefile
16+
- Read multiple bytes instead of byte-by-byte in minizip unzip.c
17+
- Add memory sanitizer to configure (--memory)
18+
- Various portability improvements
19+
- Various documentation improvements
20+
- Various spelling and typo corrections
21+
422
Changes in 1.2.13 (13 Oct 2022)
523
- Fix configure issue that discarded provided CC definition
624
- Correct incorrect inputs provided to the CRC functions
@@ -1445,7 +1463,7 @@ Changes in 0.99 (27 Jan 96)
14451463
- fix typo in Make_vms.com (f$trnlnm -> f$getsyi)
14461464
- in fcalloc, normalize pointer if size > 65520 bytes
14471465
- don't use special fcalloc for 32 bit Borland C++
1448-
- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc...
1466+
- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc.
14491467
- use Z_BINARY instead of BINARY
14501468
- document that gzclose after gzdopen will close the file
14511469
- allow "a" as mode in gzopen

FAQ

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
If your question is not there, please check the zlib home page
66
http://zlib.net/ which may have more recent information.
7-
The lastest zlib FAQ is at http://zlib.net/zlib_faq.html
7+
The latest zlib FAQ is at http://zlib.net/zlib_faq.html
88

99

1010
1. Is zlib Y2K-compliant?

Makefile.in

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ CPP=$(CC) -E
2828

2929
STATICLIB=libz.a
3030
SHAREDLIB=libz.so
31-
SHAREDLIBV=libz.so.1.2.13
31+
SHAREDLIBV=libz.so.1.3
3232
SHAREDLIBM=libz.so.1
3333
LIBS=$(STATICLIB) $(SHAREDLIBV)
3434

@@ -359,8 +359,14 @@ zconf.h.cmakein: $(SRCDIR)zconf.h.in
359359
zconf: $(SRCDIR)zconf.h.in
360360
cp -p $(SRCDIR)zconf.h.in zconf.h
361361

362+
minizip-test: static
363+
cd contrib/minizip && { CFLAGS="$(CFLAGS)" $(MAKE) test ; cd ../.. ; }
364+
365+
minizip-clean:
366+
cd contrib/minizip && { $(MAKE) clean ; cd ../.. ; }
367+
362368
mostlyclean: clean
363-
clean:
369+
clean: minizip-clean
364370
rm -f *.o *.lo *~ \
365371
example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \
366372
example64$(EXE) minigzip64$(EXE) \

README

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ZLIB DATA COMPRESSION LIBRARY
22

3-
zlib 1.2.13 is a general purpose data compression library. All the code is
3+
zlib 1.3 is a general purpose data compression library. All the code is
44
thread safe. The data format used by the zlib library is described by RFCs
55
(Request for Comments) 1950 to 1952 in the files
66
http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and
@@ -29,18 +29,17 @@ PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help.
2929

3030
Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
3131
issue of Dr. Dobb's Journal; a copy of the article is available at
32-
http://marknelson.us/1997/01/01/zlib-engine/ .
32+
https://marknelson.us/posts/1997/01/01/zlib-engine.html .
3333

34-
The changes made in version 1.2.13 are documented in the file ChangeLog.
34+
The changes made in version 1.3 are documented in the file ChangeLog.
3535

3636
Unsupported third party contributions are provided in directory contrib/ .
3737

38-
zlib is available in Java using the java.util.zip package, documented at
39-
http://java.sun.com/developer/technicalArticles/Programming/compression/ .
38+
zlib is available in Java using the java.util.zip package. Follow the API
39+
Documentation link at: https://docs.oracle.com/search/?q=java.util.zip .
4040

41-
A Perl interface to zlib written by Paul Marquess <pmqs@cpan.org> is available
42-
at CPAN (Comprehensive Perl Archive Network) sites, including
43-
http://search.cpan.org/~pmqs/IO-Compress-Zlib/ .
41+
A Perl interface to zlib and bzip2 written by Paul Marquess <pmqs@cpan.org>
42+
can be found at https://github.com/pmqs/IO-Compress .
4443

4544
A Python interface to zlib written by A.M. Kuchling <amk@amk.ca> is
4645
available in Python 1.5 and later versions, see
@@ -64,7 +63,7 @@ Notes for some targets:
6463
- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works
6564
when compiled with cc.
6665

67-
- On Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1 is
66+
- On Digital Unix 4.0D (formerly OSF/1) on AlphaServer, the cc option -std1 is
6867
necessary to get gzprintf working correctly. This is done by configure.
6968

7069
- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with
@@ -84,7 +83,7 @@ Acknowledgments:
8483

8584
Copyright notice:
8685

87-
(C) 1995-2022 Jean-loup Gailly and Mark Adler
86+
(C) 1995-2023 Jean-loup Gailly and Mark Adler
8887

8988
This software is provided 'as-is', without any express or implied
9089
warranty. In no event will the authors be held liable for any damages

SMP/zconf.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,11 @@
241241
#endif
242242

243243
#ifdef Z_SOLO
244-
typedef unsigned long z_size_t;
244+
# ifdef _WIN64
245+
typedef unsigned long long z_size_t;
246+
# else
247+
typedef unsigned long z_size_t;
248+
# endif
245249
#else
246250
# define z_longlong long long
247251
# if defined(NO_SIZE_T)
@@ -528,7 +532,7 @@ typedef uLong FAR uLongf;
528532
#if !defined(_WIN32) && defined(Z_LARGE64)
529533
# define z_off64_t off64_t
530534
#else
531-
# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO)
535+
# if defined(_WIN32) && !defined(__GNUC__)
532536
# define z_off64_t __int64
533537
# else
534538
# define z_off64_t z_off_t

adler32.c

Lines changed: 5 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77

88
#include "zutil.h"
99

10-
local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
11-
1210
#define BASE 65521U /* largest prime smaller than 65536 */
1311
#define NMAX 5552
1412
/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
@@ -60,11 +58,7 @@ local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
6058
#endif
6159

6260
/* ========================================================================= */
63-
uLong ZEXPORT adler32_z(adler, buf, len)
64-
uLong adler;
65-
const Bytef *buf;
66-
z_size_t len;
67-
{
61+
uLong ZEXPORT adler32_z(uLong adler, const Bytef *buf, z_size_t len) {
6862
unsigned long sum2;
6963
unsigned n;
7064

@@ -131,20 +125,12 @@ uLong ZEXPORT adler32_z(adler, buf, len)
131125
}
132126

133127
/* ========================================================================= */
134-
uLong ZEXPORT adler32(adler, buf, len)
135-
uLong adler;
136-
const Bytef *buf;
137-
uInt len;
138-
{
128+
uLong ZEXPORT adler32(uLong adler, const Bytef *buf, uInt len) {
139129
return adler32_z(adler, buf, len);
140130
}
141131

142132
/* ========================================================================= */
143-
local uLong adler32_combine_(adler1, adler2, len2)
144-
uLong adler1;
145-
uLong adler2;
146-
z_off64_t len2;
147-
{
133+
local uLong adler32_combine_(uLong adler1, uLong adler2, z_off64_t len2) {
148134
unsigned long sum1;
149135
unsigned long sum2;
150136
unsigned rem;
@@ -169,18 +155,10 @@ local uLong adler32_combine_(adler1, adler2, len2)
169155
}
170156

171157
/* ========================================================================= */
172-
uLong ZEXPORT adler32_combine(adler1, adler2, len2)
173-
uLong adler1;
174-
uLong adler2;
175-
z_off_t len2;
176-
{
158+
uLong ZEXPORT adler32_combine(uLong adler1, uLong adler2, z_off_t len2) {
177159
return adler32_combine_(adler1, adler2, len2);
178160
}
179161

180-
uLong ZEXPORT adler32_combine64(adler1, adler2, len2)
181-
uLong adler1;
182-
uLong adler2;
183-
z_off64_t len2;
184-
{
162+
uLong ZEXPORT adler32_combine64(uLong adler1, uLong adler2, z_off64_t len2) {
185163
return adler32_combine_(adler1, adler2, len2);
186164
}

compress.c

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,8 @@
1919
memory, Z_BUF_ERROR if there was not enough room in the output buffer,
2020
Z_STREAM_ERROR if the level parameter is invalid.
2121
*/
22-
int ZEXPORT compress2(dest, destLen, source, sourceLen, level)
23-
Bytef *dest;
24-
uLongf *destLen;
25-
const Bytef *source;
26-
uLong sourceLen;
27-
int level;
28-
{
22+
int ZEXPORT compress2(Bytef *dest, uLongf *destLen, const Bytef *source,
23+
uLong sourceLen, int level) {
2924
z_stream stream;
3025
int err;
3126
const uInt max = (uInt)-1;
@@ -65,22 +60,16 @@ int ZEXPORT compress2(dest, destLen, source, sourceLen, level)
6560

6661
/* ===========================================================================
6762
*/
68-
int ZEXPORT compress(dest, destLen, source, sourceLen)
69-
Bytef *dest;
70-
uLongf *destLen;
71-
const Bytef *source;
72-
uLong sourceLen;
73-
{
63+
int ZEXPORT compress(Bytef *dest, uLongf *destLen, const Bytef *source,
64+
uLong sourceLen) {
7465
return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION);
7566
}
7667

7768
/* ===========================================================================
7869
If the default memLevel or windowBits for deflateInit() is changed, then
7970
this function needs to be updated.
8071
*/
81-
uLong ZEXPORT compressBound(sourceLen)
82-
uLong sourceLen;
83-
{
72+
uLong ZEXPORT compressBound(uLong sourceLen) {
8473
return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) +
8574
(sourceLen >> 25) + 13;
8675
}

0 commit comments

Comments
 (0)