Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
ff77a49a
Commit
ff77a49a
authored
May 03, 2024
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
png: Import upstream release 1.6.43.
parent
80f6d511
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
51 additions
and
54 deletions
+51
-54
AUTHORS
libs/png/AUTHORS
+1
-0
png.c
libs/png/png.c
+19
-22
png.h
libs/png/png.h
+12
-13
pngconf.h
libs/png/pngconf.h
+1
-1
pnglibconf.h
libs/png/pnglibconf.h
+1
-1
pngread.c
libs/png/pngread.c
+5
-1
pngrtran.c
libs/png/pngrtran.c
+12
-16
No files found.
libs/png/AUTHORS
View file @
ff77a49a
...
...
@@ -6,6 +6,7 @@ Authors, for copyright and licensing purposes.
* Adam Richter
* Andreas Dilger
* Chris Blume
* Cosmin Truta
* Dave Martindale
* Eric S. Raymond
...
...
libs/png/png.c
View file @
ff77a49a
...
...
@@ -14,7 +14,7 @@
#include "pngpriv.h"
/* Generate a compiler error if there is an old png.h in the search path. */
typedef
png_libpng_version_1_6_4
2
Your_png_h_is_not_version_1_6_42
;
typedef
png_libpng_version_1_6_4
3
Your_png_h_is_not_version_1_6_43
;
/* Tells libpng that we have already handled the first "num_bytes" bytes
* of the PNG file signature. If the PNG data is embedded into another
...
...
@@ -794,7 +794,7 @@ png_get_copyright(png_const_structrp png_ptr)
return
PNG_STRING_COPYRIGHT
#else
return
PNG_STRING_NEWLINE
\
"libpng version 1.6.4
2
"
PNG_STRING_NEWLINE
\
"libpng version 1.6.4
3
"
PNG_STRING_NEWLINE
\
"Copyright (c) 2018-2024 Cosmin Truta"
PNG_STRING_NEWLINE
\
"Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson"
\
PNG_STRING_NEWLINE
\
...
...
@@ -1821,14 +1821,14 @@ png_icc_profile_error(png_const_structrp png_ptr, png_colorspacerp colorspace,
}
# ifdef PNG_WARNINGS_SUPPORTED
else
{
char
number
[
PNG_NUMBER_BUFFER_SIZE
];
/* +24 = 114 */
{
char
number
[
PNG_NUMBER_BUFFER_SIZE
];
/* +24 = 114 */
pos
=
png_safecat
(
message
,
(
sizeof
message
),
pos
,
png_format_number
(
number
,
number
+
(
sizeof
number
),
PNG_NUMBER_FORMAT_x
,
value
));
pos
=
png_safecat
(
message
,
(
sizeof
message
),
pos
,
"h: "
);
/* +2 = 116 */
}
pos
=
png_safecat
(
message
,
(
sizeof
message
),
pos
,
png_format_number
(
number
,
number
+
(
sizeof
number
),
PNG_NUMBER_FORMAT_x
,
value
));
pos
=
png_safecat
(
message
,
(
sizeof
message
),
pos
,
"h: "
);
/* +2 = 116 */
}
# endif
/* The 'reason' is an arbitrary message, allow +79 maximum 195 */
pos
=
png_safecat
(
message
,
(
sizeof
message
),
pos
,
reason
);
...
...
@@ -2511,17 +2511,6 @@ png_colorspace_set_rgb_coefficients(png_structrp png_ptr)
#endif
/* COLORSPACE */
#ifdef __GNUC__
/* This exists solely to work round a warning from GNU C. */
static
int
/* PRIVATE */
png_gt
(
size_t
a
,
size_t
b
)
{
return
a
>
b
;
}
#else
# define png_gt(a,b) ((a) > (b))
#endif
void
/* PRIVATE */
png_check_IHDR
(
png_const_structrp
png_ptr
,
png_uint_32
width
,
png_uint_32
height
,
int
bit_depth
,
...
...
@@ -2543,8 +2532,16 @@ png_check_IHDR(png_const_structrp png_ptr,
error
=
1
;
}
if
(
png_gt
(((
width
+
7
)
&
(
~
7U
)),
((
PNG_SIZE_MAX
/* The bit mask on the first line below must be at least as big as a
* png_uint_32. "~7U" is not adequate on 16-bit systems because it will
* be an unsigned 16-bit value. Casting to (png_alloc_size_t) makes the
* type of the result at least as bit (in bits) as the RHS of the > operator
* which also avoids a common warning on 64-bit systems that the comparison
* of (png_uint_32) against the constant value on the RHS will always be
* false.
*/
if
(((
width
+
7
)
&
~
(
png_alloc_size_t
)
7
)
>
(((
PNG_SIZE_MAX
-
48
/* big_row_buf hack */
-
1
)
/* filter byte */
/
8
)
/* 8-byte RGBA pixels */
...
...
libs/png/png.h
View file @
ff77a49a
/* png.h - header file for PNG reference library
*
* libpng version 1.6.4
2
* libpng version 1.6.4
3
*
* Copyright (c) 2018-2024 Cosmin Truta
* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson
...
...
@@ -15,7 +15,7 @@
* libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.6.35, July 2018:
* Glenn Randers-Pehrson
* libpng versions 1.6.36, December 2018, through 1.6.4
2, Jan
uary 2024:
* libpng versions 1.6.36, December 2018, through 1.6.4
3, Febr
uary 2024:
* Cosmin Truta
* See also "Contributing Authors", below.
*/
...
...
@@ -239,7 +239,7 @@
* ...
* 1.5.30 15 10530 15.so.15.30[.0]
* ...
* 1.6.4
2 16 10641 16.so.16.41
[.0]
* 1.6.4
3 16 10643 16.so.16.43
[.0]
*
* Henceforth the source version will match the shared-library major and
* minor numbers; the shared-library major version number will be used for
...
...
@@ -255,9 +255,6 @@
* to the info_ptr or png_ptr members through png.h, and the compiled
* application is loaded with a different version of the library.
*
* DLLNUM will change each time there are forward or backward changes
* in binary compatibility (e.g., when a new feature is added).
*
* See libpng.txt or libpng.3 for more information. The PNG specification
* is available as a W3C Recommendation and as an ISO/IEC Standard; see
* <https://www.w3.org/TR/2003/REC-PNG-20031110/>
...
...
@@ -278,19 +275,21 @@
*/
/* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.6.4
2
"
#define PNG_LIBPNG_VER_STRING "1.6.4
3
"
#define PNG_HEADER_VERSION_STRING " libpng version " PNG_LIBPNG_VER_STRING "\n"
#define PNG_LIBPNG_VER_SONUM 16
#define PNG_LIBPNG_VER_DLLNUM 16
/* The versions of shared library builds should stay in sync, going forward */
#define PNG_LIBPNG_VER_SHAREDLIB 16
#define PNG_LIBPNG_VER_SONUM PNG_LIBPNG_VER_SHAREDLIB
/* [Deprecated] */
#define PNG_LIBPNG_VER_DLLNUM PNG_LIBPNG_VER_SHAREDLIB
/* [Deprecated] */
/* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
#define PNG_LIBPNG_VER_MAJOR 1
#define PNG_LIBPNG_VER_MINOR 6
#define PNG_LIBPNG_VER_RELEASE 4
1
#define PNG_LIBPNG_VER_RELEASE 4
3
/* This should be zero for a public release, or non-zero for a
* development version.
[Deprecated]
* development version.
*/
#define PNG_LIBPNG_VER_BUILD 0
...
...
@@ -318,7 +317,7 @@
* From version 1.0.1 it is:
* XXYYZZ, where XX=major, YY=minor, ZZ=release
*/
#define PNG_LIBPNG_VER 1064
1
/* 1.6.42
*/
#define PNG_LIBPNG_VER 1064
3
/* 1.6.43
*/
/* Library configuration: these options cannot be changed after
* the library has been built.
...
...
@@ -428,7 +427,7 @@ extern "C" {
/* This triggers a compiler error in png.c, if png.c and png.h
* do not agree upon the version number.
*/
typedef
char
*
png_libpng_version_1_6_4
2
;
typedef
char
*
png_libpng_version_1_6_4
3
;
/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
*
...
...
libs/png/pngconf.h
View file @
ff77a49a
/* pngconf.h - machine-configurable file for libpng
*
* libpng version 1.6.4
2
* libpng version 1.6.4
3
*
* Copyright (c) 2018-2024 Cosmin Truta
* Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson
...
...
libs/png/pnglibconf.h
View file @
ff77a49a
/* pnglibconf.h - library build configuration */
/* libpng version 1.6.4
2
*/
/* libpng version 1.6.4
3
*/
/* Copyright (c) 2018-2024 Cosmin Truta */
/* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */
...
...
libs/png/pngread.c
View file @
ff77a49a
...
...
@@ -568,7 +568,11 @@ png_read_row(png_structrp png_ptr, png_bytep row, png_bytep dsp_row)
#endif
#ifdef PNG_READ_TRANSFORMS_SUPPORTED
if
(
png_ptr
->
transformations
||
png_ptr
->
num_palette_max
>=
0
)
if
(
png_ptr
->
transformations
# ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED
||
png_ptr
->
num_palette_max
>=
0
# endif
)
png_do_read_transformations
(
png_ptr
,
&
row_info
);
#endif
...
...
libs/png/pngrtran.c
View file @
ff77a49a
...
...
@@ -297,14 +297,13 @@ png_set_alpha_mode_fixed(png_structrp png_ptr, int mode,
output_gamma
=
translate_gamma_flags
(
png_ptr
,
output_gamma
,
1
/*screen*/
);
/* Validate the value to ensure it is in a reasonable range. The value
/* Validate the value to ensure it is in a reasonable range.
The value
* is expected to be 1 or greater, but this range test allows for some
* viewing correction values. The intent is to weed out users of this API
* who use the inverse of the gamma value accidentally! Since some of these
* values are reasonable this may have to be changed:
* viewing correction values. The intent is to weed out the API users
* who might use the inverse of the gamma value accidentally!
*
*
1.6.x: changed from 0.07..3 to 0.01..100 (to accommodate the optimal 16-bit
*
gamma of 36, and its reciprocal.)
*
In libpng 1.6.0, we changed from 0.07..3 to 0.01..100, to accommodate
*
the optimal 16-bit gamma of 36 and its reciprocal.
*/
if
(
output_gamma
<
1000
||
output_gamma
>
10000000
)
png_error
(
png_ptr
,
"output gamma out of expected range"
);
...
...
@@ -441,7 +440,7 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette,
int
i
;
png_ptr
->
quantize_index
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)
((
png_uint_32
)
num_palette
*
(
sizeof
(
png_byte
)))
);
(
png_alloc_size_t
)
num_palette
);
for
(
i
=
0
;
i
<
num_palette
;
i
++
)
png_ptr
->
quantize_index
[
i
]
=
(
png_byte
)
i
;
}
...
...
@@ -458,7 +457,7 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette,
/* Initialize an array to sort colors */
png_ptr
->
quantize_sort
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)
((
png_uint_32
)
num_palette
*
(
sizeof
(
png_byte
)))
);
(
png_alloc_size_t
)
num_palette
);
/* Initialize the quantize_sort array */
for
(
i
=
0
;
i
<
num_palette
;
i
++
)
...
...
@@ -592,11 +591,9 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette,
/* Initialize palette index arrays */
png_ptr
->
index_to_palette
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)((
png_uint_32
)
num_palette
*
(
sizeof
(
png_byte
))));
(
png_alloc_size_t
)
num_palette
);
png_ptr
->
palette_to_index
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)((
png_uint_32
)
num_palette
*
(
sizeof
(
png_byte
))));
(
png_alloc_size_t
)
num_palette
);
/* Initialize the sort array */
for
(
i
=
0
;
i
<
num_palette
;
i
++
)
...
...
@@ -761,12 +758,11 @@ png_set_quantize(png_structrp png_ptr, png_colorp palette,
size_t
num_entries
=
((
size_t
)
1
<<
total_bits
);
png_ptr
->
palette_lookup
=
(
png_bytep
)
png_calloc
(
png_ptr
,
(
png_alloc_size_t
)(
num_entries
*
(
sizeof
(
png_byte
))
));
(
png_alloc_size_t
)(
num_entries
));
distance
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)(
num_entries
*
(
sizeof
(
png_byte
))));
distance
=
(
png_bytep
)
png_malloc
(
png_ptr
,
(
png_alloc_size_t
)
num_entries
);
memset
(
distance
,
0xff
,
num_entries
*
(
sizeof
(
png_byte
))
);
memset
(
distance
,
0xff
,
num_entries
);
for
(
i
=
0
;
i
<
num_palette
;
i
++
)
{
...
...
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