[master] Port change to pngrtran.c from 1.5.3: when expanding a paletted image,

always expand to RGBA if transparency is present.
This commit is contained in:
Glenn Randers-Pehrson 2011-06-03 21:17:49 -05:00
parent 5a5ad7a5fa
commit d41915dc2a
3 changed files with 5 additions and 2 deletions

View File

@ -34,6 +34,8 @@ version 1.4.8beta01 [June 4, 2011]
was introduced in libpng-1.2.20beta01. was introduced in libpng-1.2.20beta01.
Check for up->location !PNG_AFTER_IDAT when writing unknown chunks Check for up->location !PNG_AFTER_IDAT when writing unknown chunks
before IDAT. before IDAT.
Port change to pngrtran.c from 1.5.3: when expanding a paletted image,
always expand to RGBA if transparency is present.
Send comments/corrections/commendations to glennrp at users.sourceforge.net Send comments/corrections/commendations to glennrp at users.sourceforge.net
or to png-mng-implement at lists.sf.net (subscription required; visit or to png-mng-implement at lists.sf.net (subscription required; visit

View File

@ -2802,6 +2802,8 @@ version 1.4.8beta01 [June 4, 2011]
was introduced in libpng-1.2.20beta01. was introduced in libpng-1.2.20beta01.
Check for up->location !PNG_AFTER_IDAT when writing unknown chunks Check for up->location !PNG_AFTER_IDAT when writing unknown chunks
before IDAT. before IDAT.
Port change to pngrtran.c from 1.5.3: when expanding a paletted image,
always expand to RGBA if transparency is present.
Send comments/corrections/commendations to glennrp at users.sourceforge.net Send comments/corrections/commendations to glennrp at users.sourceforge.net
or to png-mng-implement at lists.sf.net (subscription required; visit or to png-mng-implement at lists.sf.net (subscription required; visit

View File

@ -1181,8 +1181,7 @@ png_read_transform_info(png_structp png_ptr, png_infop info_ptr)
{ {
if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE) if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
{ {
if (png_ptr->num_trans && if (png_ptr->num_trans)
(png_ptr->transformations & PNG_EXPAND_tRNS))
info_ptr->color_type = PNG_COLOR_TYPE_RGB_ALPHA; info_ptr->color_type = PNG_COLOR_TYPE_RGB_ALPHA;
else else
info_ptr->color_type = PNG_COLOR_TYPE_RGB; info_ptr->color_type = PNG_COLOR_TYPE_RGB;