| Index: third_party/libpng/pngrtran.c
|
| diff --git a/third_party/libpng/pngrtran.c b/third_party/libpng/pngrtran.c
|
| index 0a760cef0273484ec1345af3a2ae1a4e3086a6aa..348a8b13da5701176038666b5869923a490e3d0a 100644
|
| --- a/third_party/libpng/pngrtran.c
|
| +++ b/third_party/libpng/pngrtran.c
|
| @@ -1,8 +1,8 @@
|
|
|
| /* pngrtran.c - transforms the data in a row for PNG readers
|
| *
|
| - * Last changed in libpng 1.2.51 [February 6, 2014]
|
| - * Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
| + * Last changed in libpng 1.2.53 [February 26, 2015]
|
| + * Copyright (c) 1998-2015 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.)
|
| *
|
| @@ -2410,10 +2410,14 @@ png_do_rgb_to_gray(png_structp png_ptr, png_row_infop row_info, png_bytep row)
|
| for (i = 0; i < row_width; i++)
|
| {
|
| png_uint_16 red, green, blue, w;
|
| + png_byte hi,lo;
|
|
|
| - red = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - green = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - blue = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + red = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + green = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + blue = (png_uint_16)((hi << 8) | (lo));
|
|
|
| if (red == green && red == blue)
|
| w = red;
|
| @@ -2445,10 +2449,14 @@ png_do_rgb_to_gray(png_structp png_ptr, png_row_infop row_info, png_bytep row)
|
| for (i = 0; i < row_width; i++)
|
| {
|
| png_uint_16 red, green, blue, gray16;
|
| + png_byte hi,lo;
|
|
|
| - red = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - green = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - blue = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + red = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + green = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + blue = (png_uint_16)((hi << 8) | (lo));
|
|
|
| if (red != green || red != blue)
|
| rgb_error |= 1;
|
| @@ -2508,10 +2516,14 @@ png_do_rgb_to_gray(png_structp png_ptr, png_row_infop row_info, png_bytep row)
|
| for (i = 0; i < row_width; i++)
|
| {
|
| png_uint_16 red, green, blue, w;
|
| -
|
| - red = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - green = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| - blue = (png_uint_16)(((*(sp))<<8) | *(sp+1)); sp+=2;
|
| + png_byte hi,lo;
|
| +
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + red = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + green = (png_uint_16)((hi << 8) | (lo));
|
| + hi=*(sp)++; lo=*(sp)++;
|
| + blue = (png_uint_16)((hi << 8) | (lo));
|
|
|
| if (red == green && red == blue)
|
| w = red;
|
|
|