From 04dab1e82db2b6b038cda57a1918e132da6e58b5 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Mon, 26 Sep 2016 10:32:24 -0500 Subject: [PATCH] [libpng16] Updated the documentation about CRC and ADLER32 handling. --- ANNOUNCE | 1 + CHANGES | 1 + libpng-manual.txt | 8 ++++++-- libpng.3 | 8 ++++++-- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index 0c0b3d82c..66d4b81c2 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -42,6 +42,7 @@ Version 1.6.26beta01 [September 26, 2016] Merged pngtest.c with libpng-1.7.0beta84/pngtest.c Version 1.6.26beta02 [September 26, 2016] + Updated the documentation about CRC and ADLER32 handling. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/CHANGES b/CHANGES index d84f3f5de..7b77edcd0 100644 --- a/CHANGES +++ b/CHANGES @@ -5720,6 +5720,7 @@ Version 1.6.26beta01 [September 26, 2016] Merged pngtest.c with libpng-1.7.0beta84/pngtest.c Version 1.6.26beta02 [September 26, 2016] + Updated the documentation about CRC and ADLER32 handling. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/libpng-manual.txt b/libpng-manual.txt index 4680009c3..f64bd41a1 100644 --- a/libpng-manual.txt +++ b/libpng-manual.txt @@ -467,8 +467,9 @@ the default, use The values for png_set_crc_action() say how libpng is to handle CRC errors in ancillary and critical chunks, and whether to use the data contained -therein. Note that it is impossible to "discard" data in a critical -chunk. +therein. Starting with libpng-1.6.26, this also governs how an ADLER32 error +is handled while reading the IDAT chunk. Note that it is impossible to +"discard" data in a critical chunk. Choices for (int) crit_action are PNG_CRC_DEFAULT 0 error/quit @@ -485,6 +486,9 @@ Choices for (int) ancil_action are PNG_CRC_QUIET_USE 4 quiet/use data PNG_CRC_NO_CHANGE 5 use the current value +When the setting for crit_action is PNG_CRC_QUIET_USE, the CRC and ADLER32 +checksums are not only ignored, but they are not evaluated. + Setting up callback code You can set up a callback function to handle any unknown chunks in the diff --git a/libpng.3 b/libpng.3 index 1c436ba50..91db21848 100644 --- a/libpng.3 +++ b/libpng.3 @@ -977,8 +977,9 @@ the default, use The values for png_set_crc_action() say how libpng is to handle CRC errors in ancillary and critical chunks, and whether to use the data contained -therein. Note that it is impossible to "discard" data in a critical -chunk. +therein. Starting with libpng-1.6.26, this also governs how an ADLER32 error +is handled while reading the IDAT chunk. Note that it is impossible to +"discard" data in a critical chunk. Choices for (int) crit_action are PNG_CRC_DEFAULT 0 error/quit @@ -995,6 +996,9 @@ Choices for (int) ancil_action are PNG_CRC_QUIET_USE 4 quiet/use data PNG_CRC_NO_CHANGE 5 use the current value +When the setting for crit_action is PNG_CRC_QUIET_USE, the CRC and ADLER32 +checksums are not only ignored, but they are not evaluated. + .SS Setting up callback code You can set up a callback function to handle any unknown chunks in the