From a8488b78dcc172827fb358aef88007ff736a5a04 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Sun, 9 Dec 2012 20:27:28 -0600 Subject: [PATCH] [libpng15] Check for png_ptr==NULL earlier in png_zalloc(). --- ANNOUNCE | 5 +++-- CHANGES | 3 ++- png.c | 11 +++++++---- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/ANNOUNCE b/ANNOUNCE index 054c31472..a5e091aaa 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.5.14beta02 - November 30, 2012 +Libpng 1.5.14beta02 - December 10, 2012 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. @@ -32,8 +32,9 @@ Version 1.5.14beta01 [October 24, 2012] Fixed build when using #define PNG_NO_READ_GAMMA in png_do_compose() in pngrtran.c (Domani Hannes). -Version 1.5.14beta02 [November 30, 2012] +Version 1.5.14beta02 [December 10, 2012] Added missing "-" in front of DNO_GZIP in contrib/pngminim/*/makefile. + Check for png_ptr==NULL earlier in png_zalloc(). Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/CHANGES b/CHANGES index 2be0995e1..657ba60bf 100644 --- a/CHANGES +++ b/CHANGES @@ -3925,8 +3925,9 @@ Version 1.5.14beta01 [October 24, 2012] Fixed build when using #define PNG_NO_READ_GAMMA in png_do_compose() in pngrtran.c (Domani Hannes). -Version 1.5.14beta02 [November 30, 2012] +Version 1.5.14beta02 [December 10, 2012] Added missing "-" in front of DNO_GZIP in contrib/pngminim/*/makefile. + Check for png_ptr==NULL earlier in png_zalloc(). Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/png.c b/png.c index 90c0b57b7..0fdeace8a 100644 --- a/png.c +++ b/png.c @@ -73,13 +73,16 @@ PNG_FUNCTION(voidpf /* PRIVATE */, png_zalloc,(voidpf png_ptr, uInt items, uInt size),PNG_ALLOCATED) { png_voidp ptr; - png_structp p=(png_structp)png_ptr; - png_uint_32 save_flags=p->flags; + png_structp p; + png_uint_32 save_flags; png_alloc_size_t num_bytes; if (png_ptr == NULL) return (NULL); + p=(png_structp)png_ptr; + save_flags=p->flags; + if (items > PNG_UINT_32_MAX/size) { png_warning (p, "Potential overflow in png_zalloc()"); @@ -655,13 +658,13 @@ png_get_copyright(png_const_structp png_ptr) #else # ifdef __STDC__ return PNG_STRING_NEWLINE \ - "libpng version 1.5.14beta02 - October 24, 2012" PNG_STRING_NEWLINE \ + "libpng version 1.5.14beta02 - December 10, 2012" PNG_STRING_NEWLINE \ "Copyright (c) 1998-2012 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \ "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \ "Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \ PNG_STRING_NEWLINE; # else - return "libpng version 1.5.14beta02 - October 24, 2012\ + return "libpng version 1.5.14beta02 - December 10, 2012\ Copyright (c) 1998-2012 Glenn Randers-Pehrson\ Copyright (c) 1996-1997 Andreas Dilger\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.";