ANNOUNCE 5.8 KB
Newer Older
1
Libpng 1.6.19rc02 - October 31, 2015
2

3 4
This is not intended to be a public release.  It will be replaced
within a few weeks by a public version or by another test version.
5

6 7 8 9 10
Files available for download:

Source files with LF line endings (for Unix/Linux) and with a
"configure" script

11 12
   1.6.19rc02.tar.xz (LZMA-compressed, recommended)
   1.6.19rc02.tar.gz
13

14 15 16
Source files with CRLF line endings (for Windows), without the
"configure" script

17 18
   lp1619r02.7z  (LZMA-compressed, recommended)
   lp1619r02.zip
19 20 21

Other information:

22 23 24
   1.6.19rc02-README.txt
   1.6.19rc02-LICENSE.txt
   libpng-1.6.19rc02-*.asc (armored detached GPG signatures)
25 26 27

Changes since the last public release (1.6.18):

28
Version 1.6.19beta01 [July 30, 2015]
29

30 31 32
  Updated obsolete information about the simplified API macros in the
    manual pages (Bug report by Arc Riley).
  Avoid potentially dereferencing NULL info_ptr in png_info_init_3().
33 34
  Rearranged png.h to put the major sections in the same order as
    in libpng17.
35 36 37
  Eliminated unused PNG_COST_SHIFT, PNG_WEIGHT_SHIFT, PNG_COST_FACTOR, and
    PNG_WEIGHT_FACTOR macros.
  Suppressed some warnings from the Borland C++ 5.5.1/5.82 compiler
38
    (Bug report by Viktor Szakats).  Several warnings remain and are
39
    unavoidable, where we test for overflow.
40 41
  Fixed potential leak of png_pixels in contrib/pngminus/pnm2png.c
  Fixed uninitialized variable in contrib/gregbook/rpng2-x.c
42

43
Version 1.6.19beta02 [August 19, 2015]
44 45 46
  Moved config.h.in~ from the "libpng_autotools_files" list to the
    "libpng_autotools_extra" list in autogen.sh because it was causing a
    false positive for missing files (bug report by Robert C. Seacord).
47 48
  Removed unreachable "break" statements in png.c, pngread.c, and pngrtran.c
    to suppress clang warnings (Bug report by Viktor Szakats).
49
  Fixed some bad links in the man page.
50
  Changed "n bit" to "n-bit" in comments.
51 52 53 54 55 56 57
  Added signed/unsigned 16-bit safety net. This removes the dubious
    0x8000 flag definitions on 16-bit systems. They aren't supported
    yet the defs *probably* work, however it seems much safer to do this
    and be advised if anyone, contrary to advice, is building libpng 1.6
    on a 16-bit system. It also adds back various switch default clauses
    for GCC; GCC errors out if they are not present (with an appropriately
    high level of warnings).
58 59
  Safely convert num_bytes to a png_byte in png_set_sig_bytes() (Robert
    Seacord).
60 61 62 63 64 65
  Fixed the recently reported 1's complement security issue by replacing
    the value that is illegal in the PNG spec, in both signed and unsigned
    values, with 0. Illegal unsigned values (anything greater than or equal
    to  0x80000000) can still pass through, but since these are not illegal
    in ANSI-C (unlike 0x80000000 in the signed case) the checking that
    occurs later can catch them (John Bowler).
66

67
Version 1.6.19beta03 [September 26, 2015]
68
  Fixed png_save_int_32 when int is not 2's complement (John Bowler).
69 70 71 72 73 74 75 76
  Updated libpng16 with all the recent test changes from libpng17,
    including changes to pngvalid.c to ensure that the original,
    distributed, version of contrib/visupng/cexcept.h can be used
    (John Bowler).
  pngvalid contains the correction to the use of SAVE/STORE_
    UNKNOWN_CHUNKS; a bug revealed by changes in libpng 1.7. More
    tests contain the --strict option to detect warnings and the
    pngvalid-standard test has been corrected so that it does not
77
    turn on progressive-read. There is a separate test which does
78 79
    that. (John Bowler)
  Also made some signed/unsigned fixes.
80 81 82 83 84 85
  Make pngstest error limits version specific. Splitting the machine
    generated error structs out to a file allows the values to be updated
    without changing pngstest.c itself. Since libpng 1.6 and 1.7 have
    slightly different error limits this simplifies maintenance. The
    makepngs.sh script has also been updated to more accurately reflect
    current problems in libpng 1.7 (John Bowler).
86 87 88 89 90 91 92 93
  Incorporated new test PNG files into make check.  tests/pngstest-*
    are changed so that the new test files are divided into 8 groups by
    gamma and alpha channel.  These tests have considerably better code
    and pixel-value coverage than contrib/pngsuite; however,coverage is
    still incomplete (John Bowler).
  Removed the '--strict' in 1.6 because of the double-gamma-correction
    warning, updated pngstest-errors.h for the errors detected with the
    new contrib/testspngs PNG test files (John Bowler).
94

95
Version 1.6.19beta04 [October 15, 2015]
96 97 98
  Worked around rgb-to-gray issues in libpng 1.6.  The previous
    attempts to ignore the errors in the code aren't quite enough to
    deal with the 'channel selection' encoding added to libpng 1.7; abort.
99 100 101 102 103
  Fixed 'pow' macros in pngvalid.c. It is legal for 'pow' to be a
    macro, therefore the argument list cannot contain preprocessing
    directives.  Make sure pow is a function where this happens. This is
    a minimal safe fix, the issue only arises in non-performance-critical
    code (bug report by Curtis Leach, fix by John Bowler).
104
  Added sPLT support to pngtest.c
105

106 107
Version 1.6.19rc01 [October 23, 2015]
  No changes.
108

109
Version 1.6.19rc02 [October 31, 2015]
110 111
  Prevent setting or writing over-length PLTE chunk (Cosmin Truta).
  Silently truncate over-length PLTE chunk while reading.
112 113 114 115 116
  Libpng incorrectly calculated the output rowbytes when the application
    decreased either the number of channels or the bit depth (or both) in
    a user transform.  This was safe; libpng overallocated buffer space
   (potentially by quite a lot; up to 4 times the amount required) but,
   from 1.5.4 on, resulted in a png_error (John Bowler).
117

118 119 120 121 122 123 124
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
to subscribe)
or to glennrp at users.sourceforge.net

Glenn R-P