Changelog for libpng15-15-1.5.28-2.3.x86_64.rpm :
Mon Jan 2 13:00:00 2017
- updated to 1.5.28

Thu May 26 14:00:00 2016
- updated to 1.5.27

Thu Dec 17 13:00:00 2015
- updated to 1.5.26

Thu Dec 3 13:00:00 2015
- updated to 1.5.25

Fri Nov 13 13:00:00 2015
- updated to 1.5.24

Fri Aug 7 14:00:00 2015
- build in build section

Mon Mar 30 14:00:00 2015
- updated to 1.5.22

Mon Dec 29 13:00:00 2014
- updated to 1.5.21

Thu Nov 20 13:00:00 2014
- updated to 1.5.20

Fri Aug 22 14:00:00 2014
- updated to 1.5.19

Fri Feb 7 13:00:00 2014
- updated to 1.5.18

Mon Jul 1 14:00:00 2013
- updated to 1.5.17:
Removed a redundant test from png_set_IHDR().
Added set(CMAKE_CONFIGURATION_TYPES ...) to CMakeLists.txt (Andrew Hundt)
Deleted set(CMAKE_BUILD_TYPE) block from CMakeLists.txt
Make ARM NEON support work at compile time (not just configure time).
This moves the test on __ARM_NEON__ into pngconf.h to avoid issues when
using a compiler that compiles for multiple architectures at one time.
pnglibconf.h, allowing more of the decisions to be made internally
(pngpriv.h) during the compile. Without this, symbol prefixing is broken
under certain circumstances on ARM platforms. Now only the API parts of
the optimizations (\'check\' vs \'api\') are exposed in the public header files
except that the new setting PNG_ARM_NEON_OPT documents how libpng makes the
decision about whether or not to use the optimizations.
Protect symbol prefixing against CC/CPPFLAGS/CFLAGS useage.
Previous iOS/Xcode fixes for the ARM NEON optimizations moved the test
on __ARM_NEON__ from configure time to compile time. This breaks symbol
prefixing because the definition of the special png_init_filter_functions
call was hidden at configure time if the relevant compiler arguments are
passed in CFLAGS as opposed to CC. This change attempts to avoid all
the confusion that would result by declaring the init function even when
it is not used, so that it will always get prefixed.
Revised libpng.3 so that \"doclifter\" can process it.
Revised example.c to illustrate use of PNG_DEFAULT_sRGB and PNG_GAMMA_MAC_18
as parameters for png_set_gamma(). These have been available since

Thu May 23 14:00:00 2013
- updated to 1.5.16:
Corrected a misplaced closing bracket in contrib/libtests/pngvalid.c
(Flavio Medeiros).
Revised stack marking in arm/filter_neon.S and
Ensure that NEON filter stuff is completely disabled when switched \'off\'.
Previously the ARM NEON specific files were still built if the option
was switched \'off\' as opposed to being explicitly disabled.
Avoid a compiler warning about unused png_ptr in translate_gamma_flags()
Revise pngtest.c to skip tests of unsupported features.
Test for \'arm
*\' not just \'arm\' in the host_cpu configure variable.
Rebuilt the configure scripts.
Expanded manual paragraph about writing private chunks, particularly
the need to call png_set_keep_unknown_chunks() when writing them.
Updated contrib/pngminus/pnm2png.c (Paul Stewart):
Check for EOF
Ignore \"#\" delimited comments in input file to pnm2png.c.
Fixed whitespace handling
Added a call to png_set_packing()
Initialize dimension values so if sscanf fails at least we have known
invalid values.
Allow contrib/pnminus/pnm2png.c to compile without WRITE_INVERT and
WRITE_PACK supported (writes error message that it can\'t read P1 or P4
PBM files).
Revised contrib/pngminim/
*/makefile to separate CPPFLAGS and CFLAGS, and
to generate pnglibconf.h with the right zlib header files.
Ported contrib/pngminus/pnm2png.c changes back from libpng-1.6.3beta06,
to use unsigned long, not png_uint_32 arguments to sscanf().

Mon Apr 15 14:00:00 2013
- Added url as source.
Please see

Thu Mar 28 13:00:00 2013
- updated to 1.5.15:
Enabled renaming of the extern (but not DLL exported) ARM filter functions.
Also enabled inclusion of pngpriv.h in non-C files by preventing C/C++
specific definitions if PNG_VERSION_INFO_ONLY is defined.
Added png_get_palette_max() function.
Made a probably general fix for the preprocessing used to generate source
files. This change might make the check for a special C preprocessor
unnecessary, and it also eliminates the requirement for sed in the
configure build process.
Turn serial tests back on (recently turned off by autotools upgrade).
Enclosed the new png_get_palette_max in #ifdef PNG_GET_PALETTE_MAX_SUPPORTED
block, and revised pnglibconf.h and pnglibconf.h.prebuilt accordingly.
Fixed a race condition in the creation of the build \'scripts\' directory
while building with a parallel make.
Use parentheses more consistently in \"#if defined(MACRO)\" tests.
Fixed PNG_ALIGN(ED)_MEMORY and add ability to turn off ARM_NEON
runtime checks
Updated the INSTALL document.
Revised INSTALL to recommend using CPPFLAGS instead of INCLUDES.
Avoid a possible memory leak in contrib/gregbook/readpng.c

Tue Jan 29 13:00:00 2013
- updated to 1.5.14:
Ignore, with a warning, out-of-range value of num_trans in png_set_tRNS().
Fixed a minor bug in types to malloc and major bug in handling compressed
iTXt. Compressed iTXt could not be handled.
Check validity of \"num_unknowns\" parameter of png_set_unknown_chunks()
(Bug report from yuris).
Check the validity of the \"nentries\" parameter of png_set_sPLT() and the
\"num_text\" parameter of png_set_text_2().

Wed Oct 24 14:00:00 2012
- Add missing baselib requires for compat-devel-32bit

Thu Sep 27 14:00:00 2012
- updated to 1.5.13:
Do not compile PNG_DEPRECATED, PNG_ALLOC and PNG_PRIVATE when __GNUC__ < 3.
Removed references to png_zalloc() and png_zfree() from the manual.
Revised PNG_FP_EXPORT and PNG_FIXED_EXPORT macros to avoid generating
lone semicolons (patch ported from libpng-1.6.0beta11).
Corrected handling of the image array and the row_pointers array in example.
When png_set_filler is used to strip a filler channel during write, the
code prior to 1.5 would ignore the case where the output required an
alpha channel or when the output was a palettized PNG. In libpng-1.5 the
ignorance was lost and libpng proceeded to strip the channel resulting
in a bad (potential memory overwrite) failure later. This reverts
the behavior to the pre-1.5 state but issues a warning. libpng-1.6 is
expected to issue an error on the erroneous png_set_filler call.
Use png_memset() consistently (pngmem.c contained some bare \"memset\" calls).

Wed Jul 11 14:00:00 2012
- updated to 1.5.12:
Changed \"a+w\" to \"u+w\" in to fix CVE-2012-3386.

Fri Jun 15 14:00:00 2012
- updated to 1.5.11:
Enable png_set_check_for_invalid_index() for both read and write.
Made fixes for new optimization warnings from gcc 4.7.0. The compiler
performed an optimization which is safe but then warned about it.
Changing the type of \'palette_number\' in pngvalid.c removes the warning.
Improved efficiency of new do_check_palette_indexes() function.
Don\'t check palette indexes if num_palette is 0 (as it can be in MNG files).
Added two images to contrib/pngsuite (1-bit and 2-bit transparent grayscale),
and renamed three whose names were inconsistent with those in

Thu Mar 29 14:00:00 2012
- updated to 1.5.10:
Removed two useless #ifdef directives from pngread.c and one from pngrutil.c
Always put the CMAKE_LIBRARY in \"lib\" (removed special WIN32 case).
Removed empty vstudio/pngstest directory (Clifford Yapp).
Eliminated redundant png_push_read_tEXt|zTXt|iTXt|unknown code from
pngpread.c and use the sequential png_handle_tEXt, etc., in pngrutil.c;
now that png_ptr->buffer is inaccessible to applications, the special
handling is no longer useful.
Fixed bug with png_handle_hIST with odd chunk length (Frank Busse).
Added PNG_SAFE_LIMITS feature to pnglibconf.dfa and code in pngconf.h
to reset the user limits to safe ones if PNG_SAFE_LIMITS is defined.
To enable, use \"CPPFLAGS=-DPNG_SAFE_LIMITS_SUPPORTED\" on the configure
command or put \"#define PNG_SAFE_LIMITS_SUPPORTED\" in pnglibconf.h.
Revised the SAFE_LIMITS feature to be the same as the feature in libpng16.
Added information about the new limits in the manual.
Removed unused \"current_text\" members of png_struct and the png_free()
of png_ptr->current_text from pngread.c
Fixed CMF optimization of non-IDAT compressed chunks, which was added at
libpng-1.5.4. It sometimes produced too small of a window.
Reject all iCCP chunks after the first, even if the first one is invalid.
Added palette-index checking. Issue a png_benign_error() if an invalid
index is found.
Revised example.c to put text strings in a temporary character array
instead of directly assigning string constants to png_textp members.
This avoids compiler warnings when -Wwrite-strings is enabled.
Prevent PNG_EXPAND+PNG_SHIFT doing the shift twice.
Revised png_set_text_2() to avoid potential memory corruption (fixes

Mon Feb 20 13:00:00 2012
- updated to 1.5.9:

* fixed CVE-2011-3026 [bnc#747311]

Thu Feb 2 13:00:00 2012
- updated to 1.5.8:
Fixed one-byte (stack) buffer-overrun bug in png_formatted_warning()

Mon Dec 19 13:00:00 2011
- updated to 1.5.7:
Added support for ARM processor (Mans Rullgard)
Fixed bug in pngvalid on early allocation failure; fixed type cast in
pngmem.c; pngvalid would attempt to call png_error() if the allocation
of a png_struct or png_info failed. This would probably have led to a
crash. The pngmem.c implementation of png_malloc() included a cast
to png_size_t which would fail on large allocations on 16-bit systems.
Fix for the preprocessor of the Intel C compiler. The preprocessor
splits adjacent AATT signs with a space; this changes the concatentation
token from AATT-AATT-AATT to PNG_JOIN; that should work with all compiler
Paeth filter speed improvements from work by Siarhei Siamashka. This
changes the \'Paeth\' reconstruction function to improve the GCC code
generation on x86. The changes are only part of the suggested ones;
just the changes that definitely improve speed and remain simple.
The changes also slightly increase the clarity of the code.
Check compression_type parameter in png_get_iCCP and remove spurious
casts. The compression_type parameter is always assigned to, so must
be non-NULL. The cast of the profile length potentially truncated the
value unnecessarily on a 16-bit int system, so the cast of the (byte)
compression type to (int) is specified by ANSI-C anyway.
Fixed FP division by zero in pngvalid.c; the \'test_pixel\' code left
the sBIT fields in the test pixel as 0, which resulted in a floating
point division by zero which was irrelevant but causes systems where
FP exceptions cause a crash. Added code to pngvalid to turn on FP
exceptions if the appropriate glibc support is there to ensure this is
tested in the future.
Updated scripts/pnglibconf.mak and scripts/makefile.std to handle the
new PNG_JOIN macro.
Added versioning to pnglibconf.h comments.
Simplified read/write API initial version; basic read/write tested on
a variety of images, limited documentation (in the header file.)
Installed more accurate linear to sRGB conversion tables. The slightly
modified tables reduce the number of 16-bit values that
convert to an off-by-one 8-bit value. The \"makesRGB.c\" code that was used
to generate the tables is now in a contrib/sRGBtables sub-directory.
etc. see CHANGES

Thu Dec 1 13:00:00 2011
- Name field shouldn\'t contain a macro

Thu Dec 1 13:00:00 2011
- add libtool as buildrequire to avoid implicit dependency

Thu Nov 3 13:00:00 2011
- updated to 1.5.6:
Fixed some 64-bit type conversion warnings in pngrtran.c
Moved row_info from png_struct to a local variable.
The various interlace mask arrays have been made into arrays of
bytes and made PNG_CONST and static (previously some arrays were
marked PNG_CONST and some weren\'t).
Additional checks have been added to the transform code to validate the
pixel depths after the transforms on both read and write.
Removed some redundant code from pngwrite.c, in png_desgtroy_write_struct().
Changed chunk reading/writing code to use png_uint_32 instead of png_byte[4].
This removes the need to allocate temporary strings for chunk names on
the stack in the read/write code. Unknown chunk handling still uses the
string form because this is exposed in the API.
Added a note in the manual the png_read_update_info() must be called only
once with a particular info_ptr.
Revised to report FAIL when pngtest fails.
Added \"--strict\" option to pngtest, to report FAIL when the failure is
only because the resulting valid files are different.
Revised CMakeLists.txt to work with mingw and removed some material from
CMakeLists.txt that is no longer useful in libpng-1.5.
Fixed typo in and (\"-M Wl\" should be \"-M -Wl\").\"
Speed up png_combine_row() for interlaced images. This reduces the generality
of the code, allowing it to be optimized for Adam7 interlace. The masks
passed to png_combine_row() are now generated internally, avoiding
some code duplication and localizing the interlace handling somewhat.
Align png_struct::row_buf - previously it was always unaligned, caused by
a bug in the code that attempted to align it; the code needs to subtract
one from the pointer to take account of the filter byte prepended to
each row.
Optimized png_combine_row() when rows are aligned. This gains a small
percentage for 16-bit and 32-bit pixels in the typical case where the
output row buffers are appropriately aligned. The optimization was not
previously possible because the png_struct buffer was always misaligned.
Removed two redundant tests for unitialized row.
Fixed a relatively harmless memory overwrite in compressed text writing
with a 1 byte zlib buffer.
Add ability to call png_read_update_info multiple times to pngvalid.c
Fixes for multiple calls to png_read_update_info. These fixes attend to
most of the errors revealed in pngvalid, however doing the gamma work
twice results in inaccuracies that can\'t be easily fixed. There is now
a warning in the code if this is going to happen.
Turned on multiple png_read_update_info in pngvalid transform tests.
Prevent libpng from overwriting unused bits at the end of the image when
it is not byte aligned, while reading. Prior to libpng-1.5.6 libpng would
overwrite the partial byte at the end of each row if the row width was not
an exact multiple of 8 bits and the image is not interlaced.
Made png_ptr->prev_row an aligned pointer into png_ptr->big_prev_row
(Mans Rullgard).
Changed misleading \"Missing PLTE before cHRM\" warning to \"Out of place cHRM\"
Added PNG_LSR() and PNG_LSL() macros to defend against buggy compilers that
evaluate non-taken code branches and complain about out-of-range shifts.
Renamed the local variable \'byte\' because it appears in a MSYS header
Added #define PNG_ALIGN_TYPE PNG_ALIGN_NONE to contrib/pngminim/

Mon Sep 26 14:00:00 2011
- updated to 1.5.5, fixes:

* CVE-2011-3328 [bnc#720017]

Tue Jul 26 14:00:00 2011
- updated to 1.5.4, fixes:

* CVE-2011-2501 [bnc#702578]

* CVE-2011-2690 [bnc#706387]

* CVE-2011-2691 [bnc#706388]

* CVE-2011-2692 [bnc#706389]

Thu Mar 31 14:00:00 2011
- updated to 1.5.2:

* Turned on interlace handling in png_read_png().

* Fixed gcc pendantic warnings.

* Fixed png_get_current_row_number() in the interlaced case.

* Cleaned up ALPHA flags and transformations.

* Implemented expansion to 16 bits.

* etc, see

Thu Feb 3 13:00:00 2011
- updated to 1.5.1: new branch shortly after 1.4, many structural
changes, see CHANGELOG or

Thu Sep 30 14:00:00 2010
- updated to 1.4.4:

* Eliminated another deprecated reference to png_ptr->io_ptr in pngtest.c

* Updated the xcode project to work with libpng-1.4.x and added iOS targets
for simulator and device (Philippe Hausler).

* Eliminated a deprecated reference to png_ptr->io_ptr in pngtest.c

* Removed unused png_mem_
* defines from pngconf.h.

* Updated the read macros and functions from 1.5.0beta38.

Mon Aug 30 14:00:00 2010
- fix baselibs.conf after previous change

Thu Jul 29 14:00:00 2010
- add devel packages to baselbis.conf [bnc#625883]

Mon Jun 28 14:00:00 2010
- updated to 1.4.3: fixed libpng overflow (CVE-2010-1205)
and memory leak [bnc#617866]

Fri Jun 4 14:00:00 2010
- remove devel packages from baselibs.conf, not convinced of
their usefulness

Mon May 3 14:00:00 2010
- also obsolete libpng-devel-1.2.43 (previous factory version)

Sat Apr 24 14:00:00 2010
- buildrequire pkg-config to fix provides

Thu Apr 15 14:00:00 2010
- support png_read_dither() for xfig and transfig

* read-dither.patch

Tue Apr 6 14:00:00 2010
- fix baselibs.conf

Thu Mar 25 13:00:00 2010
- updated to 1.4.1 -- new branch

Thu Feb 25 13:00:00 2010
- updated to 1.2.43 (fixes [bnc#585403]):

* Removed \"#define PNG_NO_ERROR_NUMBERS\" that was inadvertently added
to pngconf.h in version 1.2.41.

* Removed leftover \"-DPNG_CONFIGURE_LIBPNG\" from scripts/makefile.darwin
and contrib/pngminim/

* Relocated png_do_chop() to its original position in pngrtran.c; the
change in version 1.2.41beta08 caused transparency to be handled wrong
in some 16-bit datastreams (Yusaku Sugai).

* Renamed back to and revised CMakeLists.txt
(revising changes made in 1.2.41)

in pngset.c to be consistent with other changes in version 1.2.38.

* Avoid deprecated references to png_ptr-io_ptr and png_ptr->error_ptr
in pngtest.c

Mon Dec 14 13:00:00 2009
- add baselibs.conf as a source

Mon Dec 7 13:00:00 2009
- updated to 1.2.41:
contains numerous cleanups, some new compile-time warnings about
direct struct access (define PNG_NO_PEDANTIC_WARNINGS to enable),
a new xcode build project, and a minor performance improvement
(avoid building 16-bit gamma tables when not needed)

Tue Nov 24 13:00:00 2009
- updated to 1.2.40:
Removed an extra png_debug() recently added to png_write_find_filter().
Fixed incorrect #ifdef in pngset.c regarding unknown chunk support.
Various bugfixes and improvements to CMakeLists.txt (Philip Lowman)

Tue Nov 3 13:00:00 2009
- updated patches to apply with fuzz=0

Thu Aug 13 14:00:00 2009
- updated to 1.2.39:

* Added a prototype for png_64bit_product() in png.c

* Avoid a possible NULL dereference in debug build,
in png_set_text_2()

* Relocated new png_64_bit_product() prototype into png.h

* Replaced
*.tar.lzma with
*.txz in distribution.

* Reject attempt to write iCCP chunk with negative embedded
profile length.

Mon Jul 20 14:00:00 2009
- updated to 1.2.38:

* Revised libpng
*.txt and libpng.3 to mention calling png_set_IHDR()
multiple times and to specify the sample order in the tRNS chunk,
because the ISO PNG specification has a typo in the tRNS table.

PNG_HANDLE_AS_UNKNOWN_SUPPORTED, to make the png_set_keep mechanism
available for ignoring known chunks even when not saving unknown chunks.

* Adopted preference for consistent use of \"#ifdef\" and \"#ifndef\" versus
\"#if defined()\" and \"if !defined()\" where possible.

pngconf.h, and moved the various unknown chunk macro definitions

Thu Jun 4 14:00:00 2009
- updated to 1.2.37:

* fixed bug with new png_memset() of the big_row_buffer

Tue May 12 14:00:00 2009
- updated to 1.2.36 (see CHANGES)