5619 memcpy() with a null source, even if count is zero (Leon Scroggins III). |
5594 memcpy() with a null source, even if count is zero (Leon Scroggins III). |
5620 |
5595 |
5621 Version 1.6.23 [June 9, 2016] |
5596 Version 1.6.23 [June 9, 2016] |
5622 Fixed bad link to RFC2083 in png.5 (Nikola Forro). |
5597 Fixed bad link to RFC2083 in png.5 (Nikola Forro). |
5623 |
5598 |
|
5599 Version 1.6.24beta01 [June 11, 2016] |
|
5600 Avoid potential overflow of the PNG_IMAGE_SIZE macro. This macro |
|
5601 is not used within libpng, but is used in some of the examples. |
|
5602 |
|
5603 Version 1.6.24beta02 [June 23, 2016] |
|
5604 Correct filter heuristic overflow handling. This was broken when the |
|
5605 write filter code was moved out-of-line; if there is a single filter and |
|
5606 the heuristic sum overflows the calculation of the filtered line is not |
|
5607 completed. In versions prior to 1.6 the code was duplicated in-line |
|
5608 and the check not performed, so the filter operation completed; however, |
|
5609 in the multi-filter case where the sum is performed the 'none' filter would |
|
5610 be selected if all the sums overflowed, even if it wasn't in the filter |
|
5611 list. The fix to the first problem is simply to provide PNG_SIZE_MAX as |
|
5612 the current lmins sum value; this means the sum can never exceed it and |
|
5613 overflows silently. A reasonable compiler that does choose to inline |
|
5614 the code will simply eliminate the sum check. |
|
5615 The fix to the second problem is to use high precision arithmetic (this is |
|
5616 implemented in 1.7), however a simple safe fix here is to chose the lowest |
|
5617 numbered filter in the list from png_set_filter (this only works if the |
|
5618 first problem is also fixed) (John Bowler). |
|
5619 Use a more efficient absolute value calculation on SSE2 (Matthieu Darbois). |
|
5620 Fixed the case where PNG_IMAGE_BUFFER_SIZE can overflow in the application |
|
5621 as a result of the application using an increased 'row_stride'; previously |
|
5622 png_image_finish_read only checked for overflow on the base calculation of |
|
5623 components. (I.e. it checked for overflow of a 32-bit number on the total |
|
5624 number of pixel components in the output format, not the possibly padded row |
|
5625 length and not the number of bytes, which for linear formats is twice the |
|
5626 number of components.) |
|
5627 MSVC does not like '-(unsigned)', so replaced it with 0U-(unsigned) |
|
5628 MSVC does not like (uInt) = -(unsigned) (i.e. as an initializer), unless |
|
5629 the conversion is explicitly invoked by a cast. |
|
5630 Put the SKIP definition in the correct place. It needs to come after the |
|
5631 png.h include (see all the other .c files in contrib/libtests) because it |
|
5632 depends on PNG_LIBPNG_VER. |
|
5633 Removed the three compile warning options from the individual project |
|
5634 files into the zlib.props globals. It increases the warning level from 4 |
|
5635 to All and adds a list of the warnings that need to be turned off. This is |
|
5636 semi-documentary; the intent is to tell libpng users which warnings have |
|
5637 been examined and judged non-fixable at present. The warning about |
|
5638 structure padding is fixable, but it would be a signficant change (moving |
|
5639 structure members around). |
|
5640 |
|
5641 Version 1.6.24beta03 [July 4, 2016] |
|
5642 Optimized absolute value calculation in filter selection, similar to |
|
5643 code in the PAETH decoder in pngrutil.c. Build with PNG_USE_ABS to |
|
5644 use this. |
|
5645 Added pngcp to the build together with a pngcp.dfa configuration test. |
|
5646 Added high resolution timing to pngcp. |
|
5647 Added "Common linking failures" section to INSTALL. |
|
5648 Relocated misplaced #endif in png.c sRGB profile checking. |
|
5649 Fixed two Coverity issues in pngcp.c. |
|
5650 |
|
5651 Version 1.6.24beta04 [July 8, 2016] |
|
5652 Avoid filter-selection heuristic sum calculations in cases where only one |
|
5653 filter is a candidate for selection. This trades off code size (added |
|
5654 private png_setup_*_row_only() functions) for speed. |
|
5655 |
|
5656 Version 1.6.24beta05 [July 13, 2016] |
|
5657 Fixed some indentation to comply with our coding style. |
|
5658 Added contrib/tools/reindent. |
|
5659 |
|
5660 Version 1.6.24beta06 [July 18, 2016] |
|
5661 Fixed more indentation to comply with our coding style. |
|
5662 Eliminated unnecessary tests of boolean png_isaligned() vs 0. |
|
5663 |
|
5664 Version 1.6.24rc01 [July 25, 2016] |
|
5665 No changes. |
|
5666 |
|
5667 Version 1.6.24rc02 [August 1, 2016] |
|
5668 Conditionally compile SSE2 headers in contrib/intel/intel_sse.patch |
|
5669 Conditionally compile png_decompress_chunk(). |
|
5670 |
|
5671 Version 1.6.24rc03 [August 2, 2016] |
|
5672 Conditionally compile ARM_NEON headers in pngpriv.h |
|
5673 Updated contrib/intel/intel_sse.patch |
|
5674 |
|
5675 Version 1.6.24[August 4, 2016] |
|
5676 No changes. |
|
5677 |
|
5678 Version 1.6.25beta01 [August 12, 2016] |
|
5679 Reject oversized iCCP profile immediately. |
|
5680 Cleaned up PNG_DEBUG compile of pngtest.c. |
|
5681 Conditionally compile png_inflate(). |
|
5682 |
|
5683 Version 1.6.25beta02 [August 18, 2016] |
|
5684 Don't install pngcp; it conflicts with pngcp in the pngtools package. |
|
5685 Minor editing of INSTALL, (whitespace, added copyright line) |
|
5686 |
|
5687 Version 1.6.25rc01 [August 24, 2016] |
|
5688 No changes. |
|
5689 |
|
5690 Version 1.6.25rc02 [August 29, 2016] |
|
5691 Added MIPS support (Mandar Sahastrabuddhe <Mandar.Sahastrabuddhe@imgtec.com>). |
|
5692 Only the UP filter is currently implemented. |
|
5693 |
|
5694 Version 1.6.25rc03 [August 29, 2016] |
|
5695 Rebased contrib/intel/intel_sse.patch after the MIPS implementation. |
|
5696 |
|
5697 Version 1.6.25rc04 [August 30, 2016] |
|
5698 Added MIPS support for SUB, AVG, and PAETH filters (Mandar Sahastrabuddhe). |
|
5699 |
|
5700 Version 1.6.25rc05 [August 30, 2016] |
|
5701 Rebased contrib/intel/intel_sse.patch after the MIPS implementation update.. |
|
5702 |
|
5703 Version 1.6.25 [September 1, 2016] |
|
5704 No changes. |
|
5705 |
|
5706 Version 1.6.26beta01 [September 26, 2016] |
|
5707 Fixed handling zero length IDAT in pngfix (bug report by Agostino Sarubbo, |
|
5708 bugfix by John Bowler). |
|
5709 Do not issue a png_error() on read in png_set_pCAL() because png_handle_pCAL |
|
5710 has allocated memory that libpng needs to free. |
|
5711 Conditionally compile png_set_benign_errors() in pngread.c and pngtest.c |
|
5712 Issue a png_benign_error instead of a png_error on ADLER32 mismatch |
|
5713 while decoding compressed data chunks. |
|
5714 Changed PNG_ZLIB_VERNUM to ZLIB_VERNUM in pngpriv.h, pngstruct.h, and |
|
5715 pngrutil.c. |
|
5716 If CRC handling of critical chunks has been set to PNG_CRC_QUIET_USE, |
|
5717 ignore the ADLER32 checksum in the IDAT chunk as well as the chunk CRCs. |
|
5718 Issue png_benign_error() on ADLER32 checksum mismatch instead of png_error(). |
|
5719 Add tests/badcrc.png and tests/badadler.png to tests/pngtest. |
|
5720 Merged pngtest.c with libpng-1.7.0beta84/pngtest.c |
|
5721 |
|
5722 Version 1.6.26beta02 [October 1, 2016] |
|
5723 Updated the documentation about CRC and ADLER32 handling. |
|
5724 Quieted 117 warnings from clang-3.8 in pngtrans.c, pngread.c, |
|
5725 pngwrite.c, pngunknown.c, and pngvalid.c. |
|
5726 Quieted 58 (out of 144) -Wconversion compiler warnings by changing |
|
5727 flag definitions in pngpriv.h from 0xnnnn to 0xnnnnU and trivial changes |
|
5728 in png.c, pngread.c, and pngwutil.c. |
|
5729 |
|
5730 Version 1.6.26beta03 [October 2, 2016] |
|
5731 Removed contrib/libtests/*.orig and *.rej that slipped into the tarballs. |
|
5732 Quieted the 86 remaining -Wconversion compiler warnings by |
|
5733 revising the png_isaligned() macro and trivial changes in png.c, |
|
5734 pngerror.c, pngget.c, pngmem.c, pngset.c, pngrtran.c, pngrutil.c, |
|
5735 pngwtran.c, pngwrite.c, and pngwutil.c. |
|
5736 |
|
5737 Version 1.6.26beta04 [October 3, 2016] |
|
5738 Quieted (bogus?) clang warnings about "absolute value has no effect" |
|
5739 when PNG_USE_ABS is defined. |
|
5740 Fixed offsets in contrib/intel/intel_sse.patch |
|
5741 |
|
5742 Version 1.6.26beta05 [October 6, 2016] |
|
5743 Changed integer constant 4294967294 to unsigned 4294967294U in pngconf.h |
|
5744 to avoid a signed/unsigned compare in the preprocessor. |
|
5745 |
|
5746 Version 1.6.26beta06 [October 7, 2016] |
|
5747 Use zlib-1.2.8.1 inflateValidate() instead of inflateReset2() to |
|
5748 optionally avoid ADLER32 evaluation. |
|
5749 |
|
5750 Version 1.6.26rc01 [October 12, 2016] |
|
5751 No changes. |
|
5752 |
|
5753 Version 1.6.26 [October 20, 2016] |
|
5754 Cosmetic change, "ptr != 0" to "ptr != NULL" in png.c and pngrutil.c |
|
5755 Despammed email addresses (replaced "@" with " at "). |
|
5756 |
|
5757 Version 1.6.27beta01 [November 2, 2016] |
|
5758 Restrict the new ADLER32-skipping to IDAT chunks. It broke iCCP chunk |
|
5759 handling: an erroneous iCCP chunk would throw a png_error and reject the |
|
5760 entire PNG image instead of rejecting just the iCCP chunk with a warning, |
|
5761 if built with zlib-1.2.8.1. |
|
5762 |
|
5763 Version 1.6.27rc01 [December 27, 2016] |
|
5764 Control ADLER32 checking with new PNG_IGNORE_ADLER32 option. |
|
5765 Removed the use of a macro containing the pre-processor 'defined' |
|
5766 operator. It is unclear whether this is valid; a macro that |
|
5767 "generates" 'defined' is not permitted, but the use of the word |
|
5768 "generates" within the C90 standard seems to imply more than simple |
|
5769 substitution of an expression itself containing a well-formed defined |
|
5770 operation. |
|
5771 Added ARM support to CMakeLists.txt (Andreas Franek). |
|
5772 |
|
5773 Version 1.6.27 [December 29, 2016] |
|
5774 Fixed a potential null pointer dereference in png_set_text_2() (bug report |
|
5775 and patch by Patrick Keshishian, CVE-2016-10087). |
|
5776 |
|
5777 Version 1.6.28rc01 [January 3, 2017] |
|
5778 Fixed arm/aarch64 detection in CMakeLists.txt (Gianfranco Costamagna). |
|
5779 Added option to Cmake build allowing a custom location of zlib to be |
|
5780 specified in a scenario where libpng is being built as a subproject |
|
5781 alongside zlib by another project (Sam Serrels). |
|
5782 Changed png_ptr->options from a png_byte to png_uint_32, to accomodate |
|
5783 up to 16 options. |
|
5784 |
|
5785 Version 1.6.28rc02 [January 4, 2017] |
|
5786 Added "include(GNUInstallDirs)" to CMakeLists.txt (Gianfranco Costamagna). |
|
5787 Moved SSE2 optimization code into the main libpng source directory. |
|
5788 Configure libpng with "configure --enable-intel-sse" or compile |
|
5789 libpng with "-DPNG_INTEL_SSE" in CPPFLAGS to enable it. |
|
5790 |
|
5791 Version 1.6.28rc03 [January 4, 2017] |
|
5792 Backed out the SSE optimization and last CMakeLists.txt to allow time for QA. |
|
5793 |
|
5794 Version 1.6.28 [January 5, 2017] |
|
5795 No changes. |
|
5796 |
5624 Send comments/corrections/commendations to png-mng-implement at lists.sf.net |
5797 Send comments/corrections/commendations to png-mng-implement at lists.sf.net |
5625 (subscription required; visit |
5798 (subscription required; visit |
5626 https://lists.sourceforge.net/lists/listinfo/png-mng-implement |
5799 https://lists.sourceforge.net/lists/listinfo/png-mng-implement |
5627 to subscribe) |
5800 to subscribe) |
5628 or to glennrp at users.sourceforge.net |
5801 or to glennrp at users.sourceforge.net |