Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
19ce8c7f
Commit
19ce8c7f
authored
Feb 22, 2012
by
Andrey Kamaev
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
#1609 zlib is updated to 1.2.6
parent
b8eeb019
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
593 additions
and
395 deletions
+593
-395
.cvsignore
3rdparty/zlib/.cvsignore
+0
-1
CMakeLists.txt
3rdparty/zlib/CMakeLists.txt
+75
-13
README
3rdparty/zlib/README
+12
-12
adler32.c
3rdparty/zlib/adler32.c
+39
-29
crc32.c
3rdparty/zlib/crc32.c
+18
-13
crc32.h
3rdparty/zlib/crc32.h
+1
-1
deflate.c
3rdparty/zlib/deflate.c
+0
-0
deflate.h
3rdparty/zlib/deflate.h
+7
-3
gzguts.h
3rdparty/zlib/gzguts.h
+68
-14
gzlib.c
3rdparty/zlib/gzlib.c
+52
-25
gzread.c
3rdparty/zlib/gzread.c
+0
-0
gzwrite.c
3rdparty/zlib/gzwrite.c
+106
-44
infback.c
3rdparty/zlib/infback.c
+11
-3
inffixed.h
3rdparty/zlib/inffixed.h
+3
-3
inflate.c
3rdparty/zlib/inflate.c
+46
-25
inftrees.c
3rdparty/zlib/inftrees.c
+11
-35
trees.c
3rdparty/zlib/trees.c
+10
-30
zconf.h.cmakein
3rdparty/zlib/zconf.h.cmakein
+93
-53
zlib.h
3rdparty/zlib/zlib.h
+0
-0
zutil.c
3rdparty/zlib/zutil.c
+8
-25
zutil.h
3rdparty/zlib/zutil.h
+33
-66
No files found.
3rdparty/zlib/.cvsignore
deleted
100644 → 0
View file @
b8eeb019
*.aps *.plg *.o *.lo Makefile .libs *.user
3rdparty/zlib/CMakeLists.txt
View file @
19ce8c7f
...
...
@@ -2,41 +2,103 @@
# CMake file for zlib. See root CMakeLists.txt
#
# ----------------------------------------------------------------------------
PROJECT
(
zlib
)
# List of C++ files:
project
(
zlib C
)
include_directories
(
"
${
CMAKE_CURRENT_SOURCE_DIR
}
"
)
include
(
CheckTypeSize
)
include
(
CheckFunctionExists
)
include
(
CheckIncludeFile
)
include
(
CheckCSourceCompiles
)
file
(
GLOB lib_srcs *.c
)
file
(
GLOB lib_hdrs *.h
)
include
(
CheckTypeSize
)
include
(
CheckFunctionExists
)
include
(
CheckIncludeFile
)
include
(
CheckCSourceCompiles
)
set
(
the_target
"zlib"
)
#
# Check to see if we have large file support
#
check_type_size
(
off64_t OFF64_T
)
if
(
HAVE_OFF64_T
)
add_definitions
(
-D_LARGEFILE64_SOURCE=1
)
endif
()
add_library
(
${
the_target
}
STATIC
${
lib_srcs
}
${
lib_hdrs
}
)
#
# Check for fseeko
#
check_function_exists
(
fseeko HAVE_FSEEKO
)
if
(
NOT HAVE_FSEEKO
)
add_definitions
(
-DNO_FSEEKO
)
endif
()
#
# Check for unistd.h
#
check_include_file
(
unistd.h Z_HAVE_UNISTD_H
)
if
(
MSVC
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
/W3"
)
add_definitions
(
-D_CRT_SECURE_NO_DEPRECATE
)
add_definitions
(
-D_CRT_NONSTDC_NO_DEPRECATE
)
endif
()
configure_file
(
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/zconf.h.cmakein"
"
${
OpenCV_BINARY_DIR
}
/zconf.h"
@ONLY
)
include_directories
(
"
${
CMAKE_CURRENT_SOURCE_DIR
}
"
)
set
(
ZLIB_PUBLIC_HDRS
"
${
OpenCV_BINARY_DIR
}
/zconf.h"
zlib.h
)
set
(
ZLIB_PRIVATE_HDRS
crc32.h
deflate.h
gzguts.h
inffast.h
inffixed.h
inflate.h
inftrees.h
trees.h
zutil.h
)
set
(
ZLIB_SRCS
adler32.c
compress.c
crc32.c
deflate.c
gzclose.c
gzlib.c
gzread.c
gzwrite.c
inflate.c
infback.c
inftrees.c
inffast.c
trees.c
uncompr.c
zutil.c
)
set
(
the_target
"zlib"
)
add_library
(
${
the_target
}
STATIC
${
ZLIB_SRCS
}
${
ZLIB_PUBLIC_HDRS
}
${
ZLIB_PRIVATE_HDRS
}
)
set_target_properties
(
${
the_target
}
PROPERTIES DEFINE_SYMBOL ZLIB_DLL
)
if
(
UNIX
)
if
(
CMAKE_COMPILER_IS_GNUCXX OR CV_ICC
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-fPIC"
)
endif
()
endif
()
set_target_properties
(
${
the_target
}
PROPERTIES
set_target_properties
(
${
the_target
}
PROPERTIES
OUTPUT_NAME
"
${
the_target
}
"
DEBUG_POSTFIX
"
${
OPENCV_DEBUG_POSTFIX
}
"
ARCHIVE_OUTPUT_DIRECTORY
"
${
CMAKE_BINARY_DIR
}
/3rdparty/
${
OPENCV_LIB_INSTALL_PATH
}
"
)
if
(
ENABLE_SOLUTION_FOLDERS
)
set_target_properties
(
${
the_target
}
PROPERTIES FOLDER
"3rdparty"
)
set_target_properties
(
${
the_target
}
PROPERTIES FOLDER
"3rdparty"
)
endif
()
if
(
NOT BUILD_SHARED_LIBS
)
install
(
TARGETS
${
the_target
}
ARCHIVE DESTINATION share/OpenCV/3rdparty/
${
OPENCV_LIB_INSTALL_PATH
}
COMPONENT main
)
install
(
TARGETS
${
the_target
}
ARCHIVE DESTINATION share/OpenCV/3rdparty/
${
OPENCV_LIB_INSTALL_PATH
}
COMPONENT main
)
endif
()
3rdparty/zlib/README
View file @
19ce8c7f
ZLIB DATA COMPRESSION LIBRARY
zlib 1.2.
5
is a general purpose data compression library. All the code is
zlib 1.2.
6
is a general purpose data compression library. All the code is
thread safe. The data format used by the zlib library is described by RFCs
(Request for Comments) 1950 to 1952 in the files
http://
www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
and rfc1952.txt
(gzip format).
http://
tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and
rfc1952
(gzip format).
All functions of the compression library are documented in the file zlib.h
(volunteer to write man pages welcome, contact zlib@gzip.org). A usage example
of the library is given in the file
example.c which also tests that the library
is working correctly. Another example is given in the file minigzip.c. Th
e
compression library itself is composed of all source files except example.c and
minigzip.c
.
of the library is given in the file
test/example.c which also tests that
the library is working correctly. Another example is given in the fil
e
test/minigzip.c. The compression library itself is composed of all source
files in the root directory
.
To compile all files and run the test program, follow the instructions given at
the top of Makefile.in. In short "./configure; make test", and if that goes
well, "make install" should work for most flavors of Unix. For Windows, use
one
of the special makefiles in win32/ or contrib/vstudio/ . For VMS, use
well, "make install" should work for most flavors of Unix. For Windows, use
o
ne o
f the special makefiles in win32/ or contrib/vstudio/ . For VMS, use
make_vms.com.
Questions about zlib should be sent to <zlib@gzip.org>, or to Gilles Vollant
...
...
@@ -31,7 +31,7 @@ Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
issue of Dr. Dobb's Journal; a copy of the article is available at
http://marknelson.us/1997/01/01/zlib-engine/ .
The changes made in version 1.2.
5
are documented in the file ChangeLog.
The changes made in version 1.2.
6
are documented in the file ChangeLog.
Unsupported third party contributions are provided in directory contrib/ .
...
...
@@ -44,7 +44,7 @@ http://search.cpan.org/~pmqs/IO-Compress-Zlib/ .
A Python interface to zlib written by A.M. Kuchling <amk@amk.ca> is
available in Python 1.5 and later versions, see
http://
www.python.org/doc/lib/module-
zlib.html .
http://
docs.python.org/library/
zlib.html .
zlib is built into tcl: http://wiki.tcl.tk/4610 .
...
...
@@ -84,7 +84,7 @@ Acknowledgments:
Copyright notice:
(C) 1995-201
0
Jean-loup Gailly and Mark Adler
(C) 1995-201
2
Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
...
...
3rdparty/zlib/adler32.c
View file @
19ce8c7f
/* adler32.c -- compute the Adler-32 checksum of a data stream
* Copyright (C) 1995-20
07
Mark Adler
* Copyright (C) 1995-20
11
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -9,9 +9,9 @@
#define local static
local
uLong
adler32_combine_
(
uLong
adler1
,
uLong
adler2
,
z_off64_t
len2
);
local
uLong
adler32_combine_
OF
((
uLong
adler1
,
uLong
adler2
,
z_off64_t
len2
)
);
#define BASE 65521
UL
/* largest prime smaller than 65536 */
#define BASE 65521
/* largest prime smaller than 65536 */
#define NMAX 5552
/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
...
...
@@ -21,39 +21,44 @@ local uLong adler32_combine_(uLong adler1, uLong adler2, z_off64_t len2);
#define DO8(buf,i) DO4(buf,i); DO4(buf,i+4);
#define DO16(buf) DO8(buf,0); DO8(buf,8);
/* use NO_DIVIDE if your processor does not do division in hardware */
/* use NO_DIVIDE if your processor does not do division in hardware --
try it both ways to see which is faster */
#ifdef NO_DIVIDE
# define MOD(a) \
/* note that this assumes BASE is 65521, where 65536 % 65521 == 15
(thank you to John Reiser for pointing this out) */
# define CHOP(a) \
do { \
unsigned long tmp = a >> 16; \
a &= 0xffffUL; \
a += (tmp << 4) - tmp; \
} while (0)
# define MOD28(a) \
do { \
if (a >= (BASE << 16)) a -= (BASE << 16); \
if (a >= (BASE << 15)) a -= (BASE << 15); \
if (a >= (BASE << 14)) a -= (BASE << 14); \
if (a >= (BASE << 13)) a -= (BASE << 13); \
if (a >= (BASE << 12)) a -= (BASE << 12); \
if (a >= (BASE << 11)) a -= (BASE << 11); \
if (a >= (BASE << 10)) a -= (BASE << 10); \
if (a >= (BASE << 9)) a -= (BASE << 9); \
if (a >= (BASE << 8)) a -= (BASE << 8); \
if (a >= (BASE << 7)) a -= (BASE << 7); \
if (a >= (BASE << 6)) a -= (BASE << 6); \
if (a >= (BASE << 5)) a -= (BASE << 5); \
if (a >= (BASE << 4)) a -= (BASE << 4); \
if (a >= (BASE << 3)) a -= (BASE << 3); \
if (a >= (BASE << 2)) a -= (BASE << 2); \
if (a >= (BASE << 1)) a -= (BASE << 1); \
CHOP(a); \
if (a >= BASE) a -= BASE; \
} while (0)
# define MOD
4
(a) \
# define MOD(a) \
do { \
if (a >= (BASE << 4)) a -= (BASE << 4); \
if (a >= (BASE << 3)) a -= (BASE << 3); \
if (a >= (BASE << 2)) a -= (BASE << 2); \
if (a >= (BASE << 1)) a -= (BASE << 1); \
CHOP(a); \
MOD28(a); \
} while (0)
# define MOD63(a) \
do {
/* this assumes a is not negative */
\
z_off64_t tmp = a >> 32; \
a &= 0xffffffffL; \
a += (tmp << 8) - (tmp << 5) + tmp; \
tmp = a >> 16; \
a &= 0xffffL; \
a += (tmp << 4) - tmp; \
tmp = a >> 16; \
a &= 0xffffL; \
a += (tmp << 4) - tmp; \
if (a >= BASE) a -= BASE; \
} while (0)
#else
# define MOD(a) a %= BASE
# define MOD4(a) a %= BASE
# define MOD28(a) a %= BASE
# define MOD63(a) a %= BASE
#endif
/* ========================================================================= */
...
...
@@ -92,7 +97,7 @@ uLong ZEXPORT adler32(adler, buf, len)
}
if
(
adler
>=
BASE
)
adler
-=
BASE
;
MOD
4
(
sum2
);
/* only added so many BASE's */
MOD
28
(
sum2
);
/* only added so many BASE's */
return
adler
|
(
sum2
<<
16
);
}
...
...
@@ -137,8 +142,13 @@ local uLong adler32_combine_(adler1, adler2, len2)
unsigned
long
sum2
;
unsigned
rem
;
/* for negative len, return invalid adler32 as a clue for debugging */
if
(
len2
<
0
)
return
0xffffffffUL
;
/* the derivation of this formula is left as an exercise for the reader */
rem
=
(
unsigned
)(
len2
%
BASE
);
MOD63
(
len2
);
/* assumes len2 >= 0 */
rem
=
(
unsigned
)
len2
;
sum1
=
adler1
&
0xffff
;
sum2
=
rem
*
sum1
;
MOD
(
sum2
);
...
...
3rdparty/zlib/crc32.c
View file @
19ce8c7f
/* crc32.c -- compute the CRC-32 of a data stream
* Copyright (C) 1995-2006, 2010 Mark Adler
* Copyright (C) 1995-2006, 2010
, 2011
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*
* Thanks to Rodney Brown <rbrown64@csc.com.au> for his contribution of faster
...
...
@@ -17,6 +17,8 @@
of the crc tables. Therefore, if you #define DYNAMIC_CRC_TABLE, you should
first call get_crc_table() to initialize the tables before allowing more than
one thread to use crc32().
DYNAMIC_CRC_TABLE and MAKECRCH can be #defined to write out crc32.h.
*/
#ifdef MAKECRCH
...
...
@@ -53,6 +55,7 @@
/* Definitions for doing the crc four data bytes at a time. */
#ifdef BYFOUR
typedef
u4
crc_table_t
;
# define REV(w) ((((w)>>24)&0xff)+(((w)>>8)&0xff00)+ \
(((w)&0xff00)<<8)+(((w)&0xff)<<24))
local
unsigned
long
crc32_little
OF
((
unsigned
long
,
...
...
@@ -61,6 +64,7 @@
const
unsigned
char
FAR
*
,
unsigned
));
# define TBLS 8
#else
typedef
unsigned
long
crc_table_t
;
# define TBLS 1
#endif
/* BYFOUR */
...
...
@@ -68,16 +72,16 @@
local
unsigned
long
gf2_matrix_times
OF
((
unsigned
long
*
mat
,
unsigned
long
vec
));
local
void
gf2_matrix_square
OF
((
unsigned
long
*
square
,
unsigned
long
*
mat
));
local
uLong
crc32_combine_
(
uLong
crc1
,
uLong
crc2
,
z_off64_t
len2
);
local
uLong
crc32_combine_
OF
((
uLong
crc1
,
uLong
crc2
,
z_off64_t
len2
)
);
#ifdef DYNAMIC_CRC_TABLE
local
volatile
int
crc_table_empty
=
1
;
local
unsigned
long
FAR
crc_table
[
TBLS
][
256
];
local
crc_table_t
FAR
crc_table
[
TBLS
][
256
];
local
void
make_crc_table
OF
((
void
));
#ifdef MAKECRCH
local
void
write_table
OF
((
FILE
*
,
const
unsigned
long
FAR
*
));
local
void
write_table
OF
((
FILE
*
,
const
crc_table_t
FAR
*
));
#endif
/* MAKECRCH */
/*
Generate tables for a byte-wise 32-bit CRC calculation on the polynomial:
...
...
@@ -107,9 +111,9 @@ local void make_crc_table OF((void));
*/
local
void
make_crc_table
()
{
unsigned
long
c
;
crc_table_t
c
;
int
n
,
k
;
unsigned
long
poly
;
/* polynomial exclusive-or pattern */
crc_table_t
poly
;
/* polynomial exclusive-or pattern */
/* terms of polynomial defining this crc (except x^32): */
static
volatile
int
first
=
1
;
/* flag to limit concurrent making */
static
const
unsigned
char
p
[]
=
{
0
,
1
,
2
,
4
,
5
,
7
,
8
,
10
,
11
,
12
,
16
,
22
,
23
,
26
};
...
...
@@ -121,13 +125,13 @@ local void make_crc_table()
first
=
0
;
/* make exclusive-or pattern from polynomial (0xedb88320UL) */
poly
=
0
UL
;
for
(
n
=
0
;
n
<
sizeof
(
p
)
/
sizeof
(
unsigned
char
);
n
++
)
poly
|=
1UL
<<
(
31
-
p
[
n
]);
poly
=
0
;
for
(
n
=
0
;
n
<
(
int
)(
sizeof
(
p
)
/
sizeof
(
unsigned
char
)
);
n
++
)
poly
|=
(
crc_table_t
)
1
<<
(
31
-
p
[
n
]);
/* generate a crc for every 8-bit value */
for
(
n
=
0
;
n
<
256
;
n
++
)
{
c
=
(
unsigned
long
)
n
;
c
=
(
crc_table_t
)
n
;
for
(
k
=
0
;
k
<
8
;
k
++
)
c
=
c
&
1
?
poly
^
(
c
>>
1
)
:
c
>>
1
;
crc_table
[
0
][
n
]
=
c
;
...
...
@@ -164,7 +168,7 @@ local void make_crc_table()
if
(
out
==
NULL
)
return
;
fprintf
(
out
,
"/* crc32.h -- tables for rapid CRC calculation
\n
"
);
fprintf
(
out
,
" * Generated automatically by crc32.c
\n
*/
\n\n
"
);
fprintf
(
out
,
"local const
unsigned long
FAR "
);
fprintf
(
out
,
"local const
crc_table_t
FAR "
);
fprintf
(
out
,
"crc_table[TBLS][256] =
\n
{
\n
{
\n
"
);
write_table
(
out
,
crc_table
[
0
]);
# ifdef BYFOUR
...
...
@@ -184,12 +188,13 @@ local void make_crc_table()
#ifdef MAKECRCH
local
void
write_table
(
out
,
table
)
FILE
*
out
;
const
unsigned
long
FAR
*
table
;
const
crc_table_t
FAR
*
table
;
{
int
n
;
for
(
n
=
0
;
n
<
256
;
n
++
)
fprintf
(
out
,
"%s0x%08lxUL%s"
,
n
%
5
?
""
:
" "
,
table
[
n
],
fprintf
(
out
,
"%s0x%08lxUL%s"
,
n
%
5
?
""
:
" "
,
(
unsigned
long
)(
table
[
n
]),
n
==
255
?
"
\n
"
:
(
n
%
5
==
4
?
",
\n
"
:
", "
));
}
#endif
/* MAKECRCH */
...
...
3rdparty/zlib/crc32.h
View file @
19ce8c7f
...
...
@@ -2,7 +2,7 @@
* Generated automatically by crc32.c
*/
local
const
unsigned
long
FAR
crc_table
[
TBLS
][
256
]
=
local
const
crc_table_t
FAR
crc_table
[
TBLS
][
256
]
=
{
{
0x00000000UL
,
0x77073096UL
,
0xee0e612cUL
,
0x990951baUL
,
0x076dc419UL
,
...
...
3rdparty/zlib/deflate.c
View file @
19ce8c7f
This diff is collapsed.
Click to expand it.
3rdparty/zlib/deflate.h
View file @
19ce8c7f
/* deflate.h -- internal compression state
* Copyright (C) 1995-201
0
Jean-loup Gailly
* Copyright (C) 1995-201
2
Jean-loup Gailly
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -48,6 +48,9 @@
#define MAX_BITS 15
/* All codes must not exceed MAX_BITS bits */
#define Buf_size 16
/* size of bit buffer in bi_buf */
#define INIT_STATE 42
#define EXTRA_STATE 69
#define NAME_STATE 73
...
...
@@ -188,7 +191,7 @@ typedef struct internal_state {
int
nice_match
;
/* Stop searching when current match exceeds this */
/* used by trees.c: */
/* Didn't use ct_data typedef below to supress compiler warning */
/* Didn't use ct_data typedef below to sup
p
ress compiler warning */
struct
ct_data_s
dyn_ltree
[
HEAP_SIZE
];
/* literal and length tree */
struct
ct_data_s
dyn_dtree
[
2
*
D_CODES
+
1
];
/* distance tree */
struct
ct_data_s
bl_tree
[
2
*
BL_CODES
+
1
];
/* Huffman tree for bit lengths */
...
...
@@ -244,7 +247,7 @@ typedef struct internal_state {
ulg
opt_len
;
/* bit length of current block with optimal trees */
ulg
static_len
;
/* bit length of current block with static trees */
uInt
matches
;
/* number of string matches in current block */
int
last_eob_len
;
/* bit length of EOB code for last block
*/
uInt
insert
;
/* bytes at end of window left to insert
*/
#ifdef DEBUG
ulg
compressed_len
;
/* total bit length of compressed file mod 2^32 */
...
...
@@ -294,6 +297,7 @@ void ZLIB_INTERNAL _tr_init OF((deflate_state *s));
int
ZLIB_INTERNAL
_tr_tally
OF
((
deflate_state
*
s
,
unsigned
dist
,
unsigned
lc
));
void
ZLIB_INTERNAL
_tr_flush_block
OF
((
deflate_state
*
s
,
charf
*
buf
,
ulg
stored_len
,
int
last
));
void
ZLIB_INTERNAL
_tr_flush_bits
OF
((
deflate_state
*
s
));
void
ZLIB_INTERNAL
_tr_align
OF
((
deflate_state
*
s
));
void
ZLIB_INTERNAL
_tr_stored_block
OF
((
deflate_state
*
s
,
charf
*
buf
,
ulg
stored_len
,
int
last
));
...
...
3rdparty/zlib/gzguts.h
View file @
19ce8c7f
/* gzguts.h -- zlib internal header definitions for gz* operations
* Copyright (C) 2004, 2005, 2010 Mark Adler
* Copyright (C) 2004, 2005, 2010
, 2011, 2012
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -19,7 +19,7 @@
#endif
#include <stdio.h>
#include "z
util
.h"
#include "z
lib
.h"
#ifdef STDC
# include <string.h>
# include <stdlib.h>
...
...
@@ -27,17 +27,62 @@
#endif
#include <fcntl.h>
#ifdef __TURBOC__
# include <io.h>
#endif
#ifdef NO_DEFLATE
/* for compatibility with old definition */
# define NO_GZCOMPRESS
#endif
#ifdef _MSC_VER
# include <io.h>
# define vsnprintf _vsnprintf
#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550)
# ifndef HAVE_VSNPRINTF
# define HAVE_VSNPRINTF
# endif
#endif
#ifdef __GNUC__
#include <unistd.h>
#if defined(__CYGWIN__)
# ifndef HAVE_VSNPRINTF
# define HAVE_VSNPRINTF
# endif
#endif
#if defined(MSDOS) && defined(__BORLANDC__) && (BORLANDC > 0x410)
# ifndef HAVE_VSNPRINTF
# define HAVE_VSNPRINTF
# endif
#endif
#ifndef HAVE_VSNPRINTF
# ifdef MSDOS
/* vsnprintf may exist on some MS-DOS compilers (DJGPP?),
but for now we just assume it doesn't. */
# define NO_vsnprintf
# endif
# ifdef __TURBOC__
# define NO_vsnprintf
# endif
# ifdef WIN32
/* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
# if !defined(vsnprintf) && !defined(NO_vsnprintf)
# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 )
# include <io.h>
# define vsnprintf _vsnprintf
# endif
# endif
# endif
# ifdef __SASC
# define NO_vsnprintf
# endif
# ifdef VMS
# define NO_vsnprintf
# endif
# ifdef __OS400__
# define NO_vsnprintf
# endif
# ifdef __MVS__
# define NO_vsnprintf
# endif
#endif
#ifndef local
...
...
@@ -72,6 +117,13 @@
ZEXTERN
z_off64_t
ZEXPORT
gzoffset64
OF
((
gzFile
));
#endif
/* default memLevel */
#if MAX_MEM_LEVEL >= 8
# define DEF_MEM_LEVEL 8
#else
# define DEF_MEM_LEVEL MAX_MEM_LEVEL
#endif
/* default i/o buffer size -- double this for output when reading */
#define GZBUFSIZE 8192
...
...
@@ -88,23 +140,25 @@
/* internal gzip file state data structure */
typedef
struct
{
/* exposed contents for gzgetc() macro */
struct
gzFile_s
x
;
/* "x" for exposed */
/* x.have: number of bytes available at x.next */
/* x.next: next output data to deliver or write */
/* x.pos: current position in uncompressed data */
/* used for both reading and writing */
int
mode
;
/* see gzip modes above */
int
fd
;
/* file descriptor */
char
*
path
;
/* path or fd for error messages */
z_off64_t
pos
;
/* current position in uncompressed data */
unsigned
size
;
/* buffer size, zero if not allocated yet */
unsigned
want
;
/* requested buffer size, default is GZBUFSIZE */
unsigned
char
*
in
;
/* input buffer */
unsigned
char
*
out
;
/* output buffer (double-sized when reading) */
unsigned
char
*
next
;
/* next output data to deliver or write
*/
int
direct
;
/* 0 if processing gzip, 1 if transparent
*/
/* just for reading */
unsigned
have
;
/* amount of output data unused at next */
int
eof
;
/* true if end of input file reached */
z_off64_t
start
;
/* where the gzip data started, for rewinding */
z_off64_t
raw
;
/* where the raw data started, for seeking */
int
how
;
/* 0: get header, 1: copy, 2: decompress */
int
direct
;
/* true if last read direct, false if gzip */
z_off64_t
start
;
/* where the gzip data started, for rewinding */
int
eof
;
/* true if end of input file reached */
int
past
;
/* true if read requested past end */
/* just for writing */
int
level
;
/* compression level */
int
strategy
;
/* compression strategy */
...
...
3rdparty/zlib/gzlib.c
View file @
19ce8c7f
/* gzlib.c -- zlib functions common to reading and writing gzip files
* Copyright (C) 2004, 2010 Mark Adler
* Copyright (C) 2004, 2010
, 2011
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
#include "gzguts.h"
#if defined(_WIN32) && !defined(__BORLANDC__)
# define LSEEK _lseeki64
#else
#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
# define LSEEK lseek64
#else
# define LSEEK lseek
#endif
#endif
/* Local functions */
local
void
gz_reset
OF
((
gz_statep
));
...
...
@@ -71,15 +75,15 @@ char ZLIB_INTERNAL *gz_strwinerror (error)
local
void
gz_reset
(
state
)
gz_statep
state
;
{
state
->
x
.
have
=
0
;
/* no output data available */
if
(
state
->
mode
==
GZ_READ
)
{
/* for reading ... */
state
->
have
=
0
;
/* no output data available */
state
->
eof
=
0
;
/* not at end of file */
state
->
past
=
0
;
/* have not read past end yet */
state
->
how
=
LOOK
;
/* look for gzip header */
state
->
direct
=
1
;
/* default for empty file */
}
state
->
seek
=
0
;
/* no seek request pending */
gz_error
(
state
,
Z_OK
,
NULL
);
/* clear error */
state
->
pos
=
0
;
/* no uncompressed data yet */
state
->
x
.
pos
=
0
;
/* no uncompressed data yet */
state
->
strm
.
avail_in
=
0
;
/* no input data yet */
}
...
...
@@ -91,6 +95,10 @@ local gzFile gz_open(path, fd, mode)
{
gz_statep
state
;
/* check input */
if
(
path
==
NULL
)
return
NULL
;
/* allocate gzFile structure to return */
state
=
malloc
(
sizeof
(
gz_state
));
if
(
state
==
NULL
)
...
...
@@ -103,6 +111,7 @@ local gzFile gz_open(path, fd, mode)
state
->
mode
=
GZ_NONE
;
state
->
level
=
Z_DEFAULT_COMPRESSION
;
state
->
strategy
=
Z_DEFAULT_STRATEGY
;
state
->
direct
=
0
;
while
(
*
mode
)
{
if
(
*
mode
>=
'0'
&&
*
mode
<=
'9'
)
state
->
level
=
*
mode
-
'0'
;
...
...
@@ -135,6 +144,8 @@ local gzFile gz_open(path, fd, mode)
break
;
case
'F'
:
state
->
strategy
=
Z_FIXED
;
case
'T'
:
state
->
direct
=
1
;
default:
/* could consider as an error, but just ignore */
;
}
...
...
@@ -147,6 +158,15 @@ local gzFile gz_open(path, fd, mode)
return
NULL
;
}
/* can't force transparent read */
if
(
state
->
mode
==
GZ_READ
)
{
if
(
state
->
direct
)
{
free
(
state
);
return
NULL
;
}
state
->
direct
=
1
;
/* for empty file */
}
/* save the path name for error messages */
state
->
path
=
malloc
(
strlen
(
path
)
+
1
);
if
(
state
->
path
==
NULL
)
{
...
...
@@ -243,8 +263,8 @@ int ZEXPORT gzbuffer(file, size)
return
-
1
;
/* check and set requested size */
if
(
size
==
0
)
return
-
1
;
if
(
size
<
2
)
size
=
2
;
/* need two bytes to check magic header */
state
->
want
=
size
;
return
0
;
}
...
...
@@ -261,7 +281,8 @@ int ZEXPORT gzrewind(file)
state
=
(
gz_statep
)
file
;
/* check that we're reading and that there's no error */
if
(
state
->
mode
!=
GZ_READ
||
state
->
err
!=
Z_OK
)
if
(
state
->
mode
!=
GZ_READ
||
(
state
->
err
!=
Z_OK
&&
state
->
err
!=
Z_BUF_ERROR
))
return
-
1
;
/* back up and start over */
...
...
@@ -289,7 +310,7 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
return
-
1
;
/* check that there's no error */
if
(
state
->
err
!=
Z_OK
)
if
(
state
->
err
!=
Z_OK
&&
state
->
err
!=
Z_BUF_ERROR
)
return
-
1
;
/* can only seek from start or relative to current position */
...
...
@@ -298,31 +319,32 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
/* normalize offset to a SEEK_CUR specification */
if
(
whence
==
SEEK_SET
)
offset
-=
state
->
pos
;
offset
-=
state
->
x
.
pos
;
else
if
(
state
->
seek
)
offset
+=
state
->
skip
;
state
->
seek
=
0
;
/* if within raw area while reading, just go there */
if
(
state
->
mode
==
GZ_READ
&&
state
->
how
==
COPY
&&
state
->
pos
+
offset
>=
state
->
raw
)
{
ret
=
LSEEK
(
state
->
fd
,
offset
-
state
->
have
,
SEEK_CUR
);
state
->
x
.
pos
+
offset
>=
0
)
{
ret
=
LSEEK
(
state
->
fd
,
offset
-
state
->
x
.
have
,
SEEK_CUR
);
if
(
ret
==
-
1
)
return
-
1
;
state
->
have
=
0
;
state
->
x
.
have
=
0
;
state
->
eof
=
0
;
state
->
past
=
0
;
state
->
seek
=
0
;
gz_error
(
state
,
Z_OK
,
NULL
);
state
->
strm
.
avail_in
=
0
;
state
->
pos
+=
offset
;
return
state
->
pos
;
state
->
x
.
pos
+=
offset
;
return
state
->
x
.
pos
;
}
/* calculate skip amount, rewinding if needed for back seek when reading */
if
(
offset
<
0
)
{
if
(
state
->
mode
!=
GZ_READ
)
/* writing -- can't go backwards */
return
-
1
;
offset
+=
state
->
pos
;
offset
+=
state
->
x
.
pos
;
if
(
offset
<
0
)
/* before start of file! */
return
-
1
;
if
(
gzrewind
(
file
)
==
-
1
)
/* rewind, then skip to offset */
...
...
@@ -331,11 +353,11 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
/* if reading, skip what's in output buffer (one less gzgetc() check) */
if
(
state
->
mode
==
GZ_READ
)
{
n
=
GT_OFF
(
state
->
have
)
||
(
z_off64_t
)
state
->
have
>
offset
?
(
unsigned
)
offset
:
state
->
have
;
state
->
have
-=
n
;
state
->
next
+=
n
;
state
->
pos
+=
n
;
n
=
GT_OFF
(
state
->
x
.
have
)
||
(
z_off64_t
)
state
->
x
.
have
>
offset
?
(
unsigned
)
offset
:
state
->
x
.
have
;
state
->
x
.
have
-=
n
;
state
->
x
.
next
+=
n
;
state
->
x
.
pos
+=
n
;
offset
-=
n
;
}
...
...
@@ -344,7 +366,7 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
state
->
seek
=
1
;
state
->
skip
=
offset
;
}
return
state
->
pos
+
offset
;
return
state
->
x
.
pos
+
offset
;
}
/* -- see zlib.h -- */
...
...
@@ -373,7 +395,7 @@ z_off64_t ZEXPORT gztell64(file)
return
-
1
;
/* return position */
return
state
->
pos
+
(
state
->
seek
?
state
->
skip
:
0
);
return
state
->
x
.
pos
+
(
state
->
seek
?
state
->
skip
:
0
);
}
/* -- see zlib.h -- */
...
...
@@ -433,8 +455,7 @@ int ZEXPORT gzeof(file)
return
0
;
/* return end-of-file state */
return
state
->
mode
==
GZ_READ
?
(
state
->
eof
&&
state
->
strm
.
avail_in
==
0
&&
state
->
have
==
0
)
:
0
;
return
state
->
mode
==
GZ_READ
?
state
->
past
:
0
;
}
/* -- see zlib.h -- */
...
...
@@ -471,8 +492,10 @@ void ZEXPORT gzclearerr(file)
return
;
/* clear error and end-of-file */
if
(
state
->
mode
==
GZ_READ
)
if
(
state
->
mode
==
GZ_READ
)
{
state
->
eof
=
0
;
state
->
past
=
0
;
}
gz_error
(
state
,
Z_OK
,
NULL
);
}
...
...
@@ -494,6 +517,10 @@ void ZLIB_INTERNAL gz_error(state, err, msg)
state
->
msg
=
NULL
;
}
/* if fatal, set state->x.have to 0 so that the gzgetc() macro fails */
if
(
err
!=
Z_OK
&&
err
!=
Z_BUF_ERROR
)
state
->
x
.
have
=
0
;
/* set error code, and if no message, then done */
state
->
err
=
err
;
if
(
msg
==
NULL
)
...
...
3rdparty/zlib/gzread.c
View file @
19ce8c7f
This diff is collapsed.
Click to expand it.
3rdparty/zlib/gzwrite.c
View file @
19ce8c7f
/* gzwrite.c -- zlib functions for writing gzip files
* Copyright (C) 2004, 2005, 2010 Mark Adler
* Copyright (C) 2004, 2005, 2010
, 2011, 2012
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -18,44 +18,55 @@ local int gz_init(state)
int
ret
;
z_streamp
strm
=
&
(
state
->
strm
);
/* allocate input
and output buffers
*/
/* allocate input
buffer
*/
state
->
in
=
malloc
(
state
->
want
);
state
->
out
=
malloc
(
state
->
want
);
if
(
state
->
in
==
NULL
||
state
->
out
==
NULL
)
{
if
(
state
->
out
!=
NULL
)
free
(
state
->
out
);
if
(
state
->
in
!=
NULL
)
free
(
state
->
in
);
if
(
state
->
in
==
NULL
)
{
gz_error
(
state
,
Z_MEM_ERROR
,
"out of memory"
);
return
-
1
;
}
/* allocate deflate memory, set up for gzip compression */
strm
->
zalloc
=
Z_NULL
;
strm
->
zfree
=
Z_NULL
;
strm
->
opaque
=
Z_NULL
;
ret
=
deflateInit2
(
strm
,
state
->
level
,
Z_DEFLATED
,
15
+
16
,
8
,
state
->
strategy
);
if
(
ret
!=
Z_OK
)
{
free
(
state
->
in
);
gz_error
(
state
,
Z_MEM_ERROR
,
"out of memory"
);
return
-
1
;
/* only need output buffer and deflate state if compressing */
if
(
!
state
->
direct
)
{
/* allocate output buffer */
state
->
out
=
malloc
(
state
->
want
);
if
(
state
->
out
==
NULL
)
{
free
(
state
->
in
);
gz_error
(
state
,
Z_MEM_ERROR
,
"out of memory"
);
return
-
1
;
}
/* allocate deflate memory, set up for gzip compression */
strm
->
zalloc
=
Z_NULL
;
strm
->
zfree
=
Z_NULL
;
strm
->
opaque
=
Z_NULL
;
ret
=
deflateInit2
(
strm
,
state
->
level
,
Z_DEFLATED
,
MAX_WBITS
+
16
,
DEF_MEM_LEVEL
,
state
->
strategy
);
if
(
ret
!=
Z_OK
)
{
free
(
state
->
out
);
free
(
state
->
in
);
gz_error
(
state
,
Z_MEM_ERROR
,
"out of memory"
);
return
-
1
;
}
}
/* mark state as initialized */
state
->
size
=
state
->
want
;
/* initialize write buffer */
strm
->
avail_out
=
state
->
size
;
strm
->
next_out
=
state
->
out
;
state
->
next
=
strm
->
next_out
;
/* initialize write buffer if compressing */
if
(
!
state
->
direct
)
{
strm
->
avail_out
=
state
->
size
;
strm
->
next_out
=
state
->
out
;
state
->
x
.
next
=
strm
->
next_out
;
}
return
0
;
}
/* Compress whatever is at avail_in and next_in and write to the output file.
Return -1 if there is an error writing to the output file, otherwise 0.
flush is assumed to be a valid deflate() flush value. If flush is Z_FINISH,
then the deflate() state is reset to start a new gzip stream. */
then the deflate() state is reset to start a new gzip stream. If gz->direct
is true, then simply write to the output file without compressing, and
ignore flush. */
local
int
gz_comp
(
state
,
flush
)
gz_statep
state
;
int
flush
;
...
...
@@ -68,6 +79,17 @@ local int gz_comp(state, flush)
if
(
state
->
size
==
0
&&
gz_init
(
state
)
==
-
1
)
return
-
1
;
/* write directly if requested */
if
(
state
->
direct
)
{
got
=
write
(
state
->
fd
,
strm
->
next_in
,
strm
->
avail_in
);
if
(
got
<
0
||
(
unsigned
)
got
!=
strm
->
avail_in
)
{
gz_error
(
state
,
Z_ERRNO
,
zstrerror
());
return
-
1
;
}
strm
->
avail_in
=
0
;
return
0
;
}
/* run deflate() on provided input until it produces no more output */
ret
=
Z_OK
;
do
{
...
...
@@ -75,8 +97,8 @@ local int gz_comp(state, flush)
doing Z_FINISH then don't write until we get to Z_STREAM_END */
if
(
strm
->
avail_out
==
0
||
(
flush
!=
Z_NO_FLUSH
&&
(
flush
!=
Z_FINISH
||
ret
==
Z_STREAM_END
)))
{
have
=
(
unsigned
)(
strm
->
next_out
-
state
->
next
);
if
(
have
&&
((
got
=
write
(
state
->
fd
,
state
->
next
,
have
))
<
0
||
have
=
(
unsigned
)(
strm
->
next_out
-
state
->
x
.
next
);
if
(
have
&&
((
got
=
write
(
state
->
fd
,
state
->
x
.
next
,
have
))
<
0
||
(
unsigned
)
got
!=
have
))
{
gz_error
(
state
,
Z_ERRNO
,
zstrerror
());
return
-
1
;
...
...
@@ -85,7 +107,7 @@ local int gz_comp(state, flush)
strm
->
avail_out
=
state
->
size
;
strm
->
next_out
=
state
->
out
;
}
state
->
next
=
strm
->
next_out
;
state
->
x
.
next
=
strm
->
next_out
;
}
/* compress */
...
...
@@ -131,7 +153,7 @@ local int gz_zero(state, len)
}
strm
->
avail_in
=
n
;
strm
->
next_in
=
state
->
in
;
state
->
pos
+=
n
;
state
->
x
.
pos
+=
n
;
if
(
gz_comp
(
state
,
Z_NO_FLUSH
)
==
-
1
)
return
-
1
;
len
-=
n
;
...
...
@@ -163,7 +185,7 @@ int ZEXPORT gzwrite(file, buf, len)
/* since an int is returned, make sure len fits in one, otherwise return
with an error (this avoids the flaw in the interface) */
if
((
int
)
len
<
0
)
{
gz_error
(
state
,
Z_
BUF
_ERROR
,
"requested length does not fit in int"
);
gz_error
(
state
,
Z_
DATA
_ERROR
,
"requested length does not fit in int"
);
return
0
;
}
...
...
@@ -193,7 +215,7 @@ int ZEXPORT gzwrite(file, buf, len)
n
=
len
;
memcpy
(
strm
->
next_in
+
strm
->
avail_in
,
buf
,
n
);
strm
->
avail_in
+=
n
;
state
->
pos
+=
n
;
state
->
x
.
pos
+=
n
;
buf
=
(
char
*
)
buf
+
n
;
len
-=
n
;
if
(
len
&&
gz_comp
(
state
,
Z_NO_FLUSH
)
==
-
1
)
...
...
@@ -208,7 +230,7 @@ int ZEXPORT gzwrite(file, buf, len)
/* directly compress user buffer to file */
strm
->
avail_in
=
len
;
strm
->
next_in
=
(
voidp
)
buf
;
state
->
pos
+=
len
;
state
->
x
.
pos
+=
len
;
if
(
gz_comp
(
state
,
Z_NO_FLUSH
)
==
-
1
)
return
0
;
}
...
...
@@ -249,15 +271,15 @@ int ZEXPORT gzputc(file, c)
if
(
strm
->
avail_in
==
0
)
strm
->
next_in
=
state
->
in
;
strm
->
next_in
[
strm
->
avail_in
++
]
=
c
;
state
->
pos
++
;
return
c
;
state
->
x
.
pos
++
;
return
c
&
0xff
;
}
/* no room in buffer or not initialized, use gz_write() */
buf
[
0
]
=
c
;
if
(
gzwrite
(
file
,
buf
,
1
)
!=
1
)
return
-
1
;
return
c
;
return
c
&
0xff
;
}
/* -- see zlib.h -- */
...
...
@@ -274,7 +296,7 @@ int ZEXPORT gzputs(file, str)
return
ret
==
0
&&
len
!=
0
?
-
1
:
ret
;
}
#if
def STDC
#if
defined(STDC) || defined(Z_HAVE_STDARG_H)
#include <stdarg.h>
/* -- see zlib.h -- */
...
...
@@ -342,11 +364,11 @@ int ZEXPORTVA gzprintf (gzFile file, const char *format, ...)
/* update buffer and position, defer compression until needed */
strm
->
avail_in
=
(
unsigned
)
len
;
strm
->
next_in
=
state
->
in
;
state
->
pos
+=
len
;
state
->
x
.
pos
+=
len
;
return
len
;
}
#else
/* !STDC */
#else
/* !STDC
&& !Z_HAVE_STDARG_H
*/
/* -- see zlib.h -- */
int
ZEXPORTVA
gzprintf
(
file
,
format
,
a1
,
a2
,
a3
,
a4
,
a5
,
a6
,
a7
,
a8
,
a9
,
a10
,
...
...
@@ -366,6 +388,10 @@ int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
state
=
(
gz_statep
)
file
;
strm
=
&
(
state
->
strm
);
/* check that can really pass pointer in ints */
if
(
sizeof
(
int
)
!=
sizeof
(
void
*
))
return
0
;
/* check that we're writing and that there's no error */
if
(
state
->
mode
!=
GZ_WRITE
||
state
->
err
!=
Z_OK
)
return
0
;
...
...
@@ -416,7 +442,7 @@ int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
/* update buffer and position, defer compression until needed */
strm
->
avail_in
=
(
unsigned
)
len
;
strm
->
next_in
=
state
->
in
;
state
->
pos
+=
len
;
state
->
x
.
pos
+=
len
;
return
len
;
}
...
...
@@ -500,7 +526,7 @@ int ZEXPORT gzsetparams(file, level, strategy)
int
ZEXPORT
gzclose_w
(
file
)
gzFile
file
;
{
int
ret
=
0
;
int
ret
=
Z_OK
;
gz_statep
state
;
/* get internal structure */
...
...
@@ -515,17 +541,53 @@ int ZEXPORT gzclose_w(file)
/* check for seek request */
if
(
state
->
seek
)
{
state
->
seek
=
0
;
ret
+=
gz_zero
(
state
,
state
->
skip
);
if
(
gz_zero
(
state
,
state
->
skip
)
==
-
1
)
ret
=
state
->
err
;
}
/* flush, free memory, and close file */
ret
+=
gz_comp
(
state
,
Z_FINISH
);
(
void
)
deflateEnd
(
&
(
state
->
strm
));
free
(
state
->
out
);
if
(
gz_comp
(
state
,
Z_FINISH
)
==
-
1
)
ret
=
state
->
err
;
if
(
!
state
->
direct
)
{
(
void
)
deflateEnd
(
&
(
state
->
strm
));
free
(
state
->
out
);
}
free
(
state
->
in
);
gz_error
(
state
,
Z_OK
,
NULL
);
free
(
state
->
path
);
ret
+=
close
(
state
->
fd
);
if
(
close
(
state
->
fd
)
==
-
1
)
ret
=
Z_ERRNO
;
free
(
state
);
return
ret
?
Z_ERRNO
:
Z_OK
;
return
ret
;
}
/* used by zlibVersion() to get the vsnprintf story from the horse's mouth */
unsigned
long
ZEXPORT
gzflags
()
{
unsigned
long
flags
=
0
;
#if defined(STDC) || defined(Z_HAVE_STDARG_H)
# ifdef NO_vsnprintf
flags
+=
1L
<<
25
;
# ifdef HAS_vsprintf_void
flags
+=
1L
<<
26
;
# endif
# else
# ifdef HAS_vsnprintf_void
flags
+=
1L
<<
26
;
# endif
# endif
#else
flags
+=
1L
<<
24
;
# ifdef NO_snprintf
flags
+=
1L
<<
25
;
# ifdef HAS_sprintf_void
flags
+=
1L
<<
26
;
# endif
# else
# ifdef HAS_snprintf_void
flags
+=
1L
<<
26
;
# endif
# endif
#endif
return
flags
;
}
3rdparty/zlib/infback.c
View file @
19ce8c7f
/* infback.c -- inflate using a call-back interface
* Copyright (C) 1995-20
09
Mark Adler
* Copyright (C) 1995-20
11
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -42,10 +42,19 @@ int stream_size;
return
Z_STREAM_ERROR
;
strm
->
msg
=
Z_NULL
;
/* in case we return an error */
if
(
strm
->
zalloc
==
(
alloc_func
)
0
)
{
#ifdef Z_SOLO
return
Z_STREAM_ERROR
;
#else
strm
->
zalloc
=
zcalloc
;
strm
->
opaque
=
(
voidpf
)
0
;
#endif
}
if
(
strm
->
zfree
==
(
free_func
)
0
)
strm
->
zfree
=
zcfree
;
if
(
strm
->
zfree
==
(
free_func
)
0
)
#ifdef Z_SOLO
return
Z_STREAM_ERROR
;
#else
strm
->
zfree
=
zcfree
;
#endif
state
=
(
struct
inflate_state
FAR
*
)
ZALLOC
(
strm
,
1
,
sizeof
(
struct
inflate_state
));
if
(
state
==
Z_NULL
)
return
Z_MEM_ERROR
;
...
...
@@ -394,7 +403,6 @@ void FAR *out_desc;
PULLBYTE
();
}
if
(
here
.
val
<
16
)
{
NEEDBITS
(
here
.
bits
);
DROPBITS
(
here
.
bits
);
state
->
lens
[
state
->
have
++
]
=
here
.
val
;
}
...
...
3rdparty/zlib/inffixed.h
View file @
19ce8c7f
...
...
@@ -2,9 +2,9 @@
* Generated automatically by makefixed().
*/
/* WARNING: this file should *not* be used by applications.
It
is part of the implementation of the compression library and
is
subject to change. Applications should only use zlib.h.
/* WARNING: this file should *not* be used by applications.
It is part of the implementation of this library and is
subject to change. Applications should only use zlib.h.
*/
static
const
code
lenfix
[
512
]
=
{
...
...
3rdparty/zlib/inflate.c
View file @
19ce8c7f
/* inflate.c -- zlib decompression
* Copyright (C) 1995-201
0
Mark Adler
* Copyright (C) 1995-201
1
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -100,7 +100,7 @@ local int updatewindow OF((z_streamp strm, unsigned out));
local
unsigned
syncsearch
OF
((
unsigned
FAR
*
have
,
unsigned
char
FAR
*
buf
,
unsigned
len
));
int
ZEXPORT
inflateReset
(
strm
)
int
ZEXPORT
inflateReset
Keep
(
strm
)
z_streamp
strm
;
{
struct
inflate_state
FAR
*
state
;
...
...
@@ -109,15 +109,13 @@ z_streamp strm;
state
=
(
struct
inflate_state
FAR
*
)
strm
->
state
;
strm
->
total_in
=
strm
->
total_out
=
state
->
total
=
0
;
strm
->
msg
=
Z_NULL
;
strm
->
adler
=
1
;
/* to support ill-conceived Java test suite */
if
(
state
->
wrap
)
/* to support ill-conceived Java test suite */
strm
->
adler
=
state
->
wrap
&
1
;
state
->
mode
=
HEAD
;
state
->
last
=
0
;
state
->
havedict
=
0
;
state
->
dmax
=
32768U
;
state
->
head
=
Z_NULL
;
state
->
wsize
=
0
;
state
->
whave
=
0
;
state
->
wnext
=
0
;
state
->
hold
=
0
;
state
->
bits
=
0
;
state
->
lencode
=
state
->
distcode
=
state
->
next
=
state
->
codes
;
...
...
@@ -127,6 +125,19 @@ z_streamp strm;
return
Z_OK
;
}
int
ZEXPORT
inflateReset
(
strm
)
z_streamp
strm
;
{
struct
inflate_state
FAR
*
state
;
if
(
strm
==
Z_NULL
||
strm
->
state
==
Z_NULL
)
return
Z_STREAM_ERROR
;
state
=
(
struct
inflate_state
FAR
*
)
strm
->
state
;
state
->
wsize
=
0
;
state
->
whave
=
0
;
state
->
wnext
=
0
;
return
inflateResetKeep
(
strm
);
}
int
ZEXPORT
inflateReset2
(
strm
,
windowBits
)
z_streamp
strm
;
int
windowBits
;
...
...
@@ -180,10 +191,19 @@ int stream_size;
if
(
strm
==
Z_NULL
)
return
Z_STREAM_ERROR
;
strm
->
msg
=
Z_NULL
;
/* in case we return an error */
if
(
strm
->
zalloc
==
(
alloc_func
)
0
)
{
#ifdef Z_SOLO
return
Z_STREAM_ERROR
;
#else
strm
->
zalloc
=
zcalloc
;
strm
->
opaque
=
(
voidpf
)
0
;
#endif
}
if
(
strm
->
zfree
==
(
free_func
)
0
)
strm
->
zfree
=
zcfree
;
if
(
strm
->
zfree
==
(
free_func
)
0
)
#ifdef Z_SOLO
return
Z_STREAM_ERROR
;
#else
strm
->
zfree
=
zcfree
;
#endif
state
=
(
struct
inflate_state
FAR
*
)
ZALLOC
(
strm
,
1
,
sizeof
(
struct
inflate_state
));
if
(
state
==
Z_NULL
)
return
Z_MEM_ERROR
;
...
...
@@ -321,8 +341,8 @@ void makefixed()
low
=
0
;
for
(;;)
{
if
((
low
%
7
)
==
0
)
printf
(
"
\n
"
);
printf
(
"{%u,%u,%d}"
,
state
.
lencode
[
low
].
op
,
state
.
lencode
[
low
].
bits
,
state
.
lencode
[
low
].
val
);
printf
(
"{%u,%u,%d}"
,
(
low
&
127
)
==
99
?
64
:
state
.
lencode
[
low
].
op
,
state
.
lencode
[
low
].
bits
,
state
.
lencode
[
low
].
val
);
if
(
++
low
==
size
)
break
;
putchar
(
','
);
}
...
...
@@ -925,7 +945,6 @@ int flush;
PULLBYTE
();
}
if
(
here
.
val
<
16
)
{
NEEDBITS
(
here
.
bits
);
DROPBITS
(
here
.
bits
);
state
->
lens
[
state
->
have
++
]
=
here
.
val
;
}
...
...
@@ -1214,7 +1233,8 @@ int flush;
*/
inf_leave
:
RESTORE
();
if
(
state
->
wsize
||
(
state
->
mode
<
CHECK
&&
out
!=
strm
->
avail_out
))
if
(
state
->
wsize
||
(
out
!=
strm
->
avail_out
&&
state
->
mode
<
BAD
&&
(
state
->
mode
<
CHECK
||
flush
!=
Z_FINISH
)))
if
(
updatewindow
(
strm
,
out
))
{
state
->
mode
=
MEM
;
return
Z_MEM_ERROR
;
...
...
@@ -1256,6 +1276,9 @@ uInt dictLength;
{
struct
inflate_state
FAR
*
state
;
unsigned
long
id
;
unsigned
char
*
next
;
unsigned
avail
;
int
ret
;
/* check state */
if
(
strm
==
Z_NULL
||
strm
->
state
==
Z_NULL
)
return
Z_STREAM_ERROR
;
...
...
@@ -1271,21 +1294,19 @@ uInt dictLength;
return
Z_DATA_ERROR
;
}
/* copy dictionary to window */
if
(
updatewindow
(
strm
,
strm
->
avail_out
))
{
/* copy dictionary to window using updatewindow(), which will amend the
existing dictionary if appropriate */
next
=
strm
->
next_out
;
avail
=
strm
->
avail_out
;
strm
->
next_out
=
(
Bytef
*
)
dictionary
+
dictLength
;
strm
->
avail_out
=
0
;
ret
=
updatewindow
(
strm
,
dictLength
);
strm
->
avail_out
=
avail
;
strm
->
next_out
=
next
;
if
(
ret
)
{
state
->
mode
=
MEM
;
return
Z_MEM_ERROR
;
}
if
(
dictLength
>
state
->
wsize
)
{
zmemcpy
(
state
->
window
,
dictionary
+
dictLength
-
state
->
wsize
,
state
->
wsize
);
state
->
whave
=
state
->
wsize
;
}
else
{
zmemcpy
(
state
->
window
+
state
->
wsize
-
dictLength
,
dictionary
,
dictLength
);
state
->
whave
=
dictLength
;
}
state
->
havedict
=
1
;
Tracev
((
stderr
,
"inflate: dictionary set
\n
"
));
return
Z_OK
;
...
...
@@ -1433,8 +1454,8 @@ z_streamp source;
}
/* copy state */
zmemcpy
(
dest
,
source
,
sizeof
(
z_stream
));
zmemcpy
(
copy
,
state
,
sizeof
(
struct
inflate_state
));
zmemcpy
(
(
voidpf
)
dest
,
(
voidpf
)
source
,
sizeof
(
z_stream
));
zmemcpy
(
(
voidpf
)
copy
,
(
voidpf
)
state
,
sizeof
(
struct
inflate_state
));
if
(
state
->
lencode
>=
state
->
codes
&&
state
->
lencode
<=
state
->
codes
+
ENOUGH
-
1
)
{
copy
->
lencode
=
copy
->
codes
+
(
state
->
lencode
-
state
->
codes
);
...
...
3rdparty/zlib/inftrees.c
View file @
19ce8c7f
/* inftrees.c -- generate Huffman trees for efficient decoding
* Copyright (C) 1995-201
0
Mark Adler
* Copyright (C) 1995-201
2
Mark Adler
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -9,7 +9,7 @@
#define MAXBITS 15
const
char
inflate_copyright
[]
=
" inflate 1.2.
5 Copyright 1995-2010
Mark Adler "
;
" inflate 1.2.
6 Copyright 1995-2012
Mark Adler "
;
/*
If you use the zlib library in a product, an acknowledgment is welcome
in the documentation of your product. If for some reason you cannot
...
...
@@ -62,7 +62,7 @@ unsigned short FAR *work;
35
,
43
,
51
,
59
,
67
,
83
,
99
,
115
,
131
,
163
,
195
,
227
,
258
,
0
,
0
};
static
const
unsigned
short
lext
[
31
]
=
{
/* Length codes 257..285 extra */
16
,
16
,
16
,
16
,
16
,
16
,
16
,
16
,
17
,
17
,
17
,
17
,
18
,
18
,
18
,
18
,
19
,
19
,
19
,
19
,
20
,
20
,
20
,
20
,
21
,
21
,
21
,
21
,
16
,
73
,
195
};
19
,
19
,
19
,
19
,
20
,
20
,
20
,
20
,
21
,
21
,
21
,
21
,
16
,
203
,
69
};
static
const
unsigned
short
dbase
[
32
]
=
{
/* Distance codes 0..29 base */
1
,
2
,
3
,
4
,
5
,
7
,
9
,
13
,
17
,
25
,
33
,
49
,
65
,
97
,
129
,
193
,
257
,
385
,
513
,
769
,
1025
,
1537
,
2049
,
3073
,
4097
,
6145
,
...
...
@@ -289,38 +289,14 @@ unsigned short FAR *work;
}
}
/*
Fill in rest of table for incomplete codes. This loop is similar to the
loop above in incrementing huff for table indices. It is assumed that
len is equal to curr + drop, so there is no loop needed to increment
through high index bits. When the current sub-table is filled, the loop
drops back to the root table to fill in any remaining entries there.
*/
here
.
op
=
(
unsigned
char
)
64
;
/* invalid code marker */
here
.
bits
=
(
unsigned
char
)(
len
-
drop
);
here
.
val
=
(
unsigned
short
)
0
;
while
(
huff
!=
0
)
{
/* when done with sub-table, drop back to root table */
if
(
drop
!=
0
&&
(
huff
&
mask
)
!=
low
)
{
drop
=
0
;
len
=
root
;
next
=
*
table
;
here
.
bits
=
(
unsigned
char
)
len
;
}
/* put invalid code marker in table */
next
[
huff
>>
drop
]
=
here
;
/* backwards increment the len-bit code huff */
incr
=
1U
<<
(
len
-
1
);
while
(
huff
&
incr
)
incr
>>=
1
;
if
(
incr
!=
0
)
{
huff
&=
incr
-
1
;
huff
+=
incr
;
}
else
huff
=
0
;
/* fill in remaining table entry if code is incomplete (guaranteed to have
at most one remaining entry, since if the code is incomplete, the
maximum code length that was allowed to get this far is one bit) */
if
(
huff
!=
0
)
{
here
.
op
=
(
unsigned
char
)
64
;
/* invalid code marker */
here
.
bits
=
(
unsigned
char
)(
len
-
drop
);
here
.
val
=
(
unsigned
short
)
0
;
next
[
huff
]
=
here
;
}
/* set return parameters */
...
...
3rdparty/zlib/trees.c
View file @
19ce8c7f
/* trees.c -- output deflated data using Huffman coding
* Copyright (C) 1995-201
0
Jean-loup Gailly
* Copyright (C) 1995-201
2
Jean-loup Gailly
* detect_data_type() function provided freely by Cosmin Truta, 2006
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -74,11 +74,6 @@ local const uch bl_order[BL_CODES]
* probability, to avoid transmitting the lengths for unused bit length codes.
*/
#define Buf_size (8 * 2*sizeof(char))
/* Number of bits used within bi_buf. (bi_buf might be implemented on
* more than 16 bits on some systems.)
*/
/* ===========================================================================
* Local data. These are initialized only once.
*/
...
...
@@ -399,7 +394,6 @@ void ZLIB_INTERNAL _tr_init(s)
s
->
bi_buf
=
0
;
s
->
bi_valid
=
0
;
s
->
last_eob_len
=
8
;
/* enough lookahead for inflate */
#ifdef DEBUG
s
->
compressed_len
=
0L
;
s
->
bits_sent
=
0L
;
...
...
@@ -882,16 +876,18 @@ void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last)
copy_block
(
s
,
buf
,
(
unsigned
)
stored_len
,
1
);
/* with header */
}
/* ===========================================================================
* Flush the bits in the bit buffer to pending output (leaves at most 7 bits)
*/
void
ZLIB_INTERNAL
_tr_flush_bits
(
s
)
deflate_state
*
s
;
{
bi_flush
(
s
);
}
/* ===========================================================================
* Send one empty static block to give enough lookahead for inflate.
* This takes 10 bits, of which 7 may remain in the bit buffer.
* The current inflate code requires 9 bits of lookahead. If the
* last two codes for the previous block (real code plus EOB) were coded
* on 5 bits or less, inflate may have only 5+3 bits of lookahead to decode
* the last real code. In this case we send two empty static blocks instead
* of one. (There are no problems if the previous block is stored or fixed.)
* To simplify the code, we assume the worst case of last real code encoded
* on one bit only.
*/
void
ZLIB_INTERNAL
_tr_align
(
s
)
deflate_state
*
s
;
...
...
@@ -902,20 +898,6 @@ void ZLIB_INTERNAL _tr_align(s)
s
->
compressed_len
+=
10L
;
/* 3 for block type, 7 for EOB */
#endif
bi_flush
(
s
);
/* Of the 10 bits for the empty block, we have already sent
* (10 - bi_valid) bits. The lookahead for the last real code (before
* the EOB of the previous block) was thus at least one plus the length
* of the EOB plus what we have just sent of the empty static block.
*/
if
(
1
+
s
->
last_eob_len
+
10
-
s
->
bi_valid
<
9
)
{
send_bits
(
s
,
STATIC_TREES
<<
1
,
3
);
send_code
(
s
,
END_BLOCK
,
static_ltree
);
#ifdef DEBUG
s
->
compressed_len
+=
10L
;
#endif
bi_flush
(
s
);
}
s
->
last_eob_len
=
7
;
}
/* ===========================================================================
...
...
@@ -1118,7 +1100,6 @@ local void compress_block(s, ltree, dtree)
}
while
(
lx
<
s
->
last_lit
);
send_code
(
s
,
END_BLOCK
,
ltree
);
s
->
last_eob_len
=
ltree
[
END_BLOCK
].
Len
;
}
/* ===========================================================================
...
...
@@ -1226,7 +1207,6 @@ local void copy_block(s, buf, len, header)
int
header
;
/* true if block header must be written */
{
bi_windup
(
s
);
/* align on byte boundary */
s
->
last_eob_len
=
8
;
/* enough lookahead for inflate */
if
(
header
)
{
put_short
(
s
,
(
ush
)
len
);
...
...
3rdparty/zlib/zconf.h
→
3rdparty/zlib/zconf.h
.cmakein
View file @
19ce8c7f
/* zconf.h -- configuration of the zlib compression library
* Copyright (C) 1995-201
0
Jean-loup Gailly.
* Copyright (C) 1995-201
1
Jean-loup Gailly.
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -7,6 +7,8 @@
#ifndef ZCONF_H
#define ZCONF_H
#cmakedefine Z_PREFIX
#cmakedefine Z_HAVE_UNISTD_H
/*
* If you *really* need a unique prefix for all types and library functions,
...
...
@@ -15,6 +17,7 @@
* this permanently in zconf.h using "./configure --zprefix".
*/
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
# define Z_PREFIX_SET
/* all linked symbols */
# define _dist_code z__dist_code
...
...
@@ -27,9 +30,11 @@
# define adler32 z_adler32
# define adler32_combine z_adler32_combine
# define adler32_combine64 z_adler32_combine64
# define compress z_compress
# define compress2 z_compress2
# define compressBound z_compressBound
# ifndef Z_SOLO
# define compress z_compress
# define compress2 z_compress2
# define compressBound z_compressBound
# endif
# define crc32 z_crc32
# define crc32_combine z_crc32_combine
# define crc32_combine64 z_crc32_combine64
...
...
@@ -40,44 +45,50 @@
# define deflateInit2_ z_deflateInit2_
# define deflateInit_ z_deflateInit_
# define deflateParams z_deflateParams
# define deflatePending z_deflatePending
# define deflatePrime z_deflatePrime
# define deflateReset z_deflateReset
# define deflateResetKeep z_deflateResetKeep
# define deflateSetDictionary z_deflateSetDictionary
# define deflateSetHeader z_deflateSetHeader
# define deflateTune z_deflateTune
# define deflate_copyright z_deflate_copyright
# define get_crc_table z_get_crc_table
# define gz_error z_gz_error
# define gz_intmax z_gz_intmax
# define gz_strwinerror z_gz_strwinerror
# define gzbuffer z_gzbuffer
# define gzclearerr z_gzclearerr
# define gzclose z_gzclose
# define gzclose_r z_gzclose_r
# define gzclose_w z_gzclose_w
# define gzdirect z_gzdirect
# define gzdopen z_gzdopen
# define gzeof z_gzeof
# define gzerror z_gzerror
# define gzflush z_gzflush
# define gzgetc z_gzgetc
# define gzgets z_gzgets
# define gzoffset z_gzoffset
# define gzoffset64 z_gzoffset64
# define gzopen z_gzopen
# define gzopen64 z_gzopen64
# define gzprintf z_gzprintf
# define gzputc z_gzputc
# define gzputs z_gzputs
# define gzread z_gzread
# define gzrewind z_gzrewind
# define gzseek z_gzseek
# define gzseek64 z_gzseek64
# define gzsetparams z_gzsetparams
# define gztell z_gztell
# define gztell64 z_gztell64
# define gzungetc z_gzungetc
# define gzwrite z_gzwrite
# ifndef Z_SOLO
# define gz_error z_gz_error
# define gz_intmax z_gz_intmax
# define gz_strwinerror z_gz_strwinerror
# define gzbuffer z_gzbuffer
# define gzclearerr z_gzclearerr
# define gzclose z_gzclose
# define gzclose_r z_gzclose_r
# define gzclose_w z_gzclose_w
# define gzdirect z_gzdirect
# define gzdopen z_gzdopen
# define gzeof z_gzeof
# define gzerror z_gzerror
# define gzflags z_gzflags
# define gzflush z_gzflush
# define gzgetc z_gzgetc
# define gzgetc_ z_gzgetc_
# define gzgets z_gzgets
# define gzoffset z_gzoffset
# define gzoffset64 z_gzoffset64
# define gzopen z_gzopen
# define gzopen64 z_gzopen64
# define gzprintf z_gzprintf
# define gzputc z_gzputc
# define gzputs z_gzputs
# define gzread z_gzread
# define gzrewind z_gzrewind
# define gzseek z_gzseek
# define gzseek64 z_gzseek64
# define gzsetparams z_gzsetparams
# define gztell z_gztell
# define gztell64 z_gztell64
# define gzungetc z_gzungetc
# define gzwrite z_gzwrite
# endif
# define inflate z_inflate
# define inflateBack z_inflateBack
# define inflateBackEnd z_inflateBackEnd
...
...
@@ -95,13 +106,18 @@
# define inflateSync z_inflateSync
# define inflateSyncPoint z_inflateSyncPoint
# define inflateUndermine z_inflateUndermine
# define inflateResetKeep z_inflateResetKeep
# define inflate_copyright z_inflate_copyright
# define inflate_fast z_inflate_fast
# define inflate_table z_inflate_table
# define uncompress z_uncompress
# ifndef Z_SOLO
# define uncompress z_uncompress
# endif
# define zError z_zError
# define zcalloc z_zcalloc
# define zcfree z_zcfree
# ifndef Z_SOLO
# define zcalloc z_zcalloc
# define zcfree z_zcfree
# endif
# define zlibCompileFlags z_zlibCompileFlags
# define zlibVersion z_zlibVersion
...
...
@@ -111,9 +127,11 @@
# define alloc_func z_alloc_func
# define charf z_charf
# define free_func z_free_func
# define gzFile z_gzFile
# define gz_header z_gz_header
# define gz_headerp z_gz_headerp
# ifndef Z_SOLO
# define gzFile z_gzFile
# define gz_header z_gz_header
# define gz_headerp z_gz_headerp
# endif
# define in_func z_in_func
# define intf z_intf
# define out_func z_out_func
...
...
@@ -126,7 +144,9 @@
# define voidpf z_voidpf
/* all zlib structs in zlib.h and zconf.h */
# define gz_header_s z_gz_header_s
# ifndef Z_SOLO
# define gz_header_s z_gz_header_s
# endif
# define internal_state z_internal_state
#endif
...
...
@@ -197,6 +217,12 @@
# endif
#endif
#if defined(ZLIB_CONST) && !defined(z_const)
# define z_const const
#else
# define z_const
#endif
/* Some Mac compilers merge all .h files incorrectly: */
#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
# define NO_DUMMY_DECL
...
...
@@ -243,6 +269,14 @@
# endif
#endif
#ifndef Z_ARG /* function prototypes for stdarg */
# if defined(STDC) || defined(Z_HAVE_STDARG_H)
# define Z_ARG(args) args
# else
# define Z_ARG(args) ()
# endif
#endif
/* The following definitions for FAR are needed only for MSDOS mixed
* model programming (small or medium model with some far allocations).
* This was tested only with MSC; for other MSDOS compilers you may have
...
...
@@ -360,8 +394,14 @@ typedef uLong FAR uLongf;
# define Z_HAVE_UNISTD_H
#endif
#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */
# define Z_HAVE_STDARG_H
#endif
#ifdef STDC
# include <sys/types.h>
/* for off_t */
# ifndef Z_SOLO
# include <sys/types.h> /* for off_t */
# endif
#endif
/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
...
...
@@ -374,7 +414,11 @@ typedef uLong FAR uLongf;
# undef _LARGEFILE64_SOURCE
#endif
#if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE)
#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
# define Z_LARGE
#endif
#if (defined(Z_HAVE_UNISTD_H) || defined(Z_LARGE)) && !defined(Z_SOLO)
# include <unistd.h> /* for SEEK_* and off_t */
# ifdef VMS
# include <unixio.h> /* for off_t */
...
...
@@ -384,7 +428,7 @@ typedef uLong FAR uLongf;
# endif
#endif
#if
ndef SEEK_SET
#if
!defined(SEEK_SET) && !defined(Z_SOLO)
# define SEEK_SET 0 /* Seek from beginning of file. */
# define SEEK_CUR 1 /* Seek from current position. */
# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
...
...
@@ -394,18 +438,14 @@ typedef uLong FAR uLongf;
# define z_off_t long
#endif
#if
defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
#if
!defined(_WIN32) && (defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0)
# define z_off64_t off64_t
#else
# if defined(_WIN32)
# define z_off64_t __int64
# else
# define z_off64_t z_off_t
#endif
#if defined(__OS400__)
# define NO_vsnprintf
#endif
#if defined(__MVS__)
# define NO_vsnprintf
#endif
/* MVS linker does not support external names larger than 8 bytes */
...
...
3rdparty/zlib/zlib.h
View file @
19ce8c7f
This diff is collapsed.
Click to expand it.
3rdparty/zlib/zutil.c
View file @
19ce8c7f
/* zutil.c -- target dependent utility functions for the compression library
* Copyright (C) 1995-2005, 2010 Jean-loup Gailly.
* Copyright (C) 1995-2005, 2010
, 2011
Jean-loup Gailly.
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -85,37 +85,17 @@ uLong ZEXPORT zlibCompileFlags()
#ifdef FASTEST
flags
+=
1L
<<
21
;
#endif
#ifdef STDC
# ifdef NO_vsnprintf
flags
+=
1L
<<
25
;
# ifdef HAS_vsprintf_void
flags
+=
1L
<<
26
;
# endif
# else
# ifdef HAS_vsnprintf_void
flags
+=
1L
<<
26
;
# endif
# endif
#ifdef Z_SOLO
return
flags
;
#else
flags
+=
1L
<<
24
;
# ifdef NO_snprintf
flags
+=
1L
<<
25
;
# ifdef HAS_sprintf_void
flags
+=
1L
<<
26
;
# endif
# else
# ifdef HAS_snprintf_void
flags
+=
1L
<<
26
;
# endif
# endif
return
flags
+
gzflags
();
#endif
return
flags
;
}
#ifdef DEBUG
# ifndef verbose
# define verbose
-1
# define verbose
0
# endif
int
ZLIB_INTERNAL
z_verbose
=
verbose
;
...
...
@@ -181,6 +161,7 @@ void ZLIB_INTERNAL zmemzero(dest, len)
}
#endif
#ifndef Z_SOLO
#ifdef SYS16BIT
...
...
@@ -316,3 +297,5 @@ void ZLIB_INTERNAL zcfree (opaque, ptr)
}
#endif
/* MY_ZCALLOC */
#endif
/* !Z_SOLO */
3rdparty/zlib/zutil.h
View file @
19ce8c7f
/* zutil.h -- internal interface and configuration of the compression library
* Copyright (C) 1995-201
0
Jean-loup Gailly.
* Copyright (C) 1995-201
1
Jean-loup Gailly.
* For conditions of distribution and use, see copyright notice in zlib.h
*/
...
...
@@ -21,14 +21,7 @@
#include "zlib.h"
#ifdef __arm__
# define z_off64_t z_off_t
#endif
#ifndef Z_TREES
#define Z_TREES 6
#endif
#ifdef STDC
#if defined(STDC) && !defined(Z_SOLO)
# if !(defined(_WIN32_WCE) && defined(_MSC_VER))
# include <stddef.h>
# endif
...
...
@@ -36,6 +29,10 @@
# include <stdlib.h>
#endif
#ifdef Z_SOLO
typedef
long
ptrdiff_t
;
/* guess -- will be caught if guess is wrong */
#endif
#ifndef local
# define local static
#endif
...
...
@@ -85,16 +82,18 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
#if defined(MSDOS) || (defined(WINDOWS) && !defined(WIN32))
# define OS_CODE 0x00
# if defined(__TURBOC__) || defined(__BORLANDC__)
# if (__STDC__ == 1) && (defined(__LARGE__) || defined(__COMPACT__))
/* Allow compilation with ANSI keywords only enabled */
void
_Cdecl
farfree
(
void
*
block
);
void
*
_Cdecl
farmalloc
(
unsigned
long
nbytes
);
# else
# include <alloc.h>
# ifndef Z_SOLO
# if defined(__TURBOC__) || defined(__BORLANDC__)
# if (__STDC__ == 1) && (defined(__LARGE__) || defined(__COMPACT__))
/* Allow compilation with ANSI keywords only enabled */
void
_Cdecl
farfree
(
void
*
block
);
void
*
_Cdecl
farmalloc
(
unsigned
long
nbytes
);
# else
# include <alloc.h>
# endif
# else
/* MSC or DJGPP */
# include <malloc.h>
# endif
# else
/* MSC or DJGPP */
# include <malloc.h>
# endif
#endif
...
...
@@ -114,18 +113,20 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
#ifdef OS2
# define OS_CODE 0x06
# if
def M_I86
# if
defined(M_I86) && !defined(Z_SOLO)
# include <malloc.h>
# endif
#endif
#if defined(MACOS) || defined(TARGET_OS_MAC)
# define OS_CODE 0x07
# if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
# include <unix.h>
/* for fdopen */
# else
# ifndef fdopen
# define fdopen(fd,mode) NULL
/* No fdopen() */
# ifndef Z_SOLO
# if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
# include <unix.h>
/* for fdopen */
# else
# ifndef fdopen
# define fdopen(fd,mode) NULL
/* No fdopen() */
# endif
# endif
# endif
#endif
...
...
@@ -160,14 +161,14 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
# endif
#endif
#if defined(__BORLANDC__)
#if defined(__BORLANDC__)
&& !defined(MSDOS)
#pragma warn -8004
#pragma warn -8008
#pragma warn -8066
#endif
/* provide prototypes for these when building zlib without LFS */
#if !defined(_
LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
#if !defined(_
WIN32) && (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0)
ZEXTERN
uLong
ZEXPORT
adler32_combine64
OF
((
uLong
,
uLong
,
z_off_t
));
ZEXTERN
uLong
ZEXPORT
crc32_combine64
OF
((
uLong
,
uLong
,
z_off_t
));
#endif
...
...
@@ -184,42 +185,7 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
/* functions */
#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550)
# ifndef HAVE_VSNPRINTF
# define HAVE_VSNPRINTF
# endif
#endif
#if defined(__CYGWIN__)
# ifndef HAVE_VSNPRINTF
# define HAVE_VSNPRINTF
# endif
#endif
#ifndef HAVE_VSNPRINTF
# ifdef MSDOS
/* vsnprintf may exist on some MS-DOS compilers (DJGPP?),
but for now we just assume it doesn't. */
# define NO_vsnprintf
# endif
# ifdef __TURBOC__
# define NO_vsnprintf
# endif
# ifdef WIN32
/* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
# if !defined(vsnprintf) && !defined(NO_vsnprintf)
# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 )
# define vsnprintf _vsnprintf
# endif
# endif
# endif
# ifdef __SASC
# define NO_vsnprintf
# endif
#endif
#ifdef VMS
# define NO_vsnprintf
#endif
#if defined(pyr)
#if defined(pyr) || defined(Z_SOLO)
# define NO_MEMCPY
#endif
#if defined(SMALL_MEDIUM) && !defined(_MSC_VER) && !defined(__SC__)
...
...
@@ -268,10 +234,11 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
# define Tracecv(c,x)
#endif
voidpf
ZLIB_INTERNAL
zcalloc
OF
((
voidpf
opaque
,
unsigned
items
,
unsigned
size
));
void
ZLIB_INTERNAL
zcfree
OF
((
voidpf
opaque
,
voidpf
ptr
));
#ifndef Z_SOLO
voidpf
ZLIB_INTERNAL
zcalloc
OF
((
voidpf
opaque
,
unsigned
items
,
unsigned
size
));
void
ZLIB_INTERNAL
zcfree
OF
((
voidpf
opaque
,
voidpf
ptr
));
#endif
#define ZALLOC(strm, items, size) \
(*((strm)->zalloc))((strm)->opaque, (items), (size))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment