From 0fcbf05b6d422d13495e2170f9253ea35668b403 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Mon, 18 May 2009 10:18:00 -0500 Subject: [PATCH] Revert "Set png_ptr->old_prev_row_size=0 to force prev_row to be cleared" This reverts commit f4276c36c93e9a257f0780a3590886d5fa411f1d. --- ANNOUNCE | 2 -- CHANGES | 2 -- pngpread.c | 10 ++++------ pngrutil.c | 9 ++++----- 4 files changed, 8 insertions(+), 15 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index 56d06229..a808920d 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -54,8 +54,6 @@ version 1.2.37beta01 [May 14, 2009] version 1.2.37beta02 [May 16, 2009] Fixed typo in libpng documentation (FILTER_AVE should be FILTER_AVG) Relocated misplaced #endif in pngwrite.c, sCAL chunk handler. - In pngpread.c and pngrutil.c, set png_ptr->old_prev_row_size=0 to - force the prev_row array to be cleared before row 0 of each pass. Send comments/corrections/commendations to png-mng-implement at lists.sf.net diff --git a/CHANGES b/CHANGES index c3c02f30..7a8b7338 100644 --- a/CHANGES +++ b/CHANGES @@ -2379,8 +2379,6 @@ version 1.2.37beta01 [May 14, 2009] version 1.2.37beta02 [May 16, 2009] Fixed typo in libpng documentation (FILTER_AVE should be FILTER_AVG) Relocated misplaced #endif in pngwrite.c, sCAL chunk handler. - In pngpread.c and pngrutil.c, set png_ptr->old_prev_row_size=0 to - force the prev_row array to be cleared before row 0 of each pass. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/pngpread.c b/pngpread.c index 35ef987d..b06fbada 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,9 +1,9 @@ /* pngpread.c - read a png file in push mode * - * Last changed in libpng 1.2.37 [May 16, 2009] + * Last changed in libpng 1.2.32 [September 18, 2008] * For conditions of distribution and use, see copyright notice in png.h - * Copyright (c) 1998-2009 Glenn Randers-Pehrson + * Copyright (c) 1998-2008 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.) */ @@ -1013,12 +1013,11 @@ png_read_push_finish_row(png_structp png_ptr) if (png_ptr->row_number < png_ptr->num_rows) return; - png_ptr->old_prev_row_size = 0; /* Force clearing prev_row */ - -#ifdef PNG_READ_INTERLACING_SUPPORTED if (png_ptr->interlaced) { png_ptr->row_number = 0; + png_memset_check(png_ptr, png_ptr->prev_row, 0, + png_ptr->rowbytes + 1); do { png_ptr->pass++; @@ -1050,7 +1049,6 @@ png_read_push_finish_row(png_structp png_ptr) } while (png_ptr->iwidth == 0 || png_ptr->num_rows == 0); } -#endif /* PNG_READ_INTERLACING_SUPPORTED */ } #if defined(PNG_READ_tEXt_SUPPORTED) diff --git a/pngrutil.c b/pngrutil.c index b7c083eb..46204b96 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * Last changed in libpng 1.2.37 [May 16, 2009] + * Last changed in libpng 1.2.37 [May 15, 2009] * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2009 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -2913,13 +2913,12 @@ png_read_finish_row(png_structp png_ptr) if (png_ptr->row_number < png_ptr->num_rows) return; - /* Force prev_row to be cleared. */ - png_ptr->old_prev_row_size=0; - #ifdef PNG_READ_INTERLACING_SUPPORTED if (png_ptr->interlaced) { png_ptr->row_number = 0; + png_memset_check(png_ptr, png_ptr->prev_row, 0, + png_ptr->rowbytes + 1); do { png_ptr->pass++; @@ -3188,7 +3187,7 @@ defined(PNG_USER_TRANSFORM_PTR_SUPPORTED) if (row_bytes + 64 > png_ptr->old_big_row_buf_size) { png_free(png_ptr, png_ptr->big_row_buf); - png_ptr->big_row_buf = (png_bytep)png_malloc(png_ptr, row_bytes + 64); + png_ptr->big_row_buf = (png_bytep)png_malloc(png_ptr, row_bytes + 64); if (png_ptr->interlaced) png_memset(png_ptr->big_row_buf, 0, row_bytes + 64); png_ptr->row_buf = png_ptr->big_row_buf + 32;