[libpng16] Delay calling png_init_filter_functions() until a row with nonzero

filter is found.
This commit is contained in:
Glenn Randers-Pehrson 2013-08-20 21:15:31 -05:00
parent 52083f9152
commit 685d79e27a
3 changed files with 13 additions and 6 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.6.4beta01 - July 21, 2013
Libpng 1.6.4beta01 - August 21, 2013
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.
@ -26,7 +26,9 @@ Other information:
Changes since the last public release (1.6.3):
Version 1.6.4beta01 [July 21, 2013]
Version 1.6.4beta01 [August 21, 2013]
Delay calling png_init_filter_functions() until a row with nonzero filter
is found.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -4618,7 +4618,9 @@ Version 1.6.3 [July 18, 2013]
Added "/* SAFE */" comments in pngrutil.c and pngrtran.c where warnings
may be erroneously issued by code-checking applications.
Version 1.6.4beta01 [July 21, 2013]
Version 1.6.4beta01 [August 21, 2013]
Delay calling png_init_filter_functions() until a row with nonzero filter
is found.
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -1,7 +1,7 @@
/* pngrutil.c - utilities to read a PNG file
*
* Last changed in libpng 1.6.3 [July 18, 2013]
* Last changed in libpng 1.6.4 [(PENDING RELEASE)]
* Copyright (c) 1998-2013 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
@ -3922,11 +3922,14 @@ png_read_filter_row(png_structrp pp, png_row_infop row_info, png_bytep row,
* PNG_FILTER_OPTIMIZATIONS to a function that overrides the generic
* implementations. See png_init_filter_functions above.
*/
if (filter > PNG_FILTER_VALUE_NONE && filter < PNG_FILTER_VALUE_LAST)
{
if (pp->read_filter[0] == NULL)
png_init_filter_functions(pp);
if (filter > PNG_FILTER_VALUE_NONE && filter < PNG_FILTER_VALUE_LAST)
pp->read_filter[filter-1](row_info, row, prev_row);
}
}
#ifdef PNG_SEQUENTIAL_READ_SUPPORTED
void /* PRIVATE */