diff options
author | Glenn Randers-Pehrson <glennrp at users.sourceforge.net> | 2015-05-06 14:57:02 -0500 |
---|---|---|
committer | Glenn Randers-Pehrson <glennrp at users.sourceforge.net> | 2015-05-06 16:39:31 -0500 |
commit | d8d18fbb02aef9c77f939e3a45ac68c737811745 (patch) | |
tree | e846f7342c82d1d238703406454b7945ed3af0dd /pngwrite.c | |
parent | 74428df2fd18513510e19f8d706e77fc6e412941 (diff) |
[libpng16] Imported from libpng-1.6.18beta03.tar
Diffstat (limited to 'pngwrite.c')
-rw-r--r-- | pngwrite.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pngwrite.c b/pngwrite.c index e3c203496..64b2438f2 100644 --- a/pngwrite.c +++ b/pngwrite.c @@ -216,8 +216,13 @@ png_write_info(png_structrp png_ptr, png_const_inforp info_ptr) if ((png_ptr->transformations & PNG_INVERT_ALPHA) != 0 && info_ptr->color_type == PNG_COLOR_TYPE_PALETTE) { - int j; - for (j = 0; j<(int)info_ptr->num_trans; j++) + int j, jend; + + jend = info_ptr->num_trans; + if (jend > PNG_MAX_PALETTE_LENGTH) + jend = PNG_MAX_PALETTE_LENGTH; + + for (j = 0; j<jend; ++j) info_ptr->trans_alpha[j] = (png_byte)(255 - info_ptr->trans_alpha[j]); } |