[libpng16] Return NULL from png_malloc_array() with a warning instead of calling

png_error() on failure.  Reject oversized iCCP profile immediately.
This commit is contained in:
Glenn Randers-Pehrson
2016-08-10 12:09:22 -05:00
parent cdc0e74ee6
commit 19fefd3a4b
4 changed files with 19 additions and 10 deletions

View File

@@ -1,7 +1,7 @@
/* pngmem.c - stub functions for memory allocation
*
* Last changed in libpng 1.6.24 [August 4, 2016]
* Last changed in libpng 1.6.25 [(PENDING RELEASE)]
* Copyright (c) 1998-2002,2004,2006-2014,2016 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.)
@@ -123,7 +123,10 @@ png_malloc_array,(png_const_structrp png_ptr, int nelements,
size_t element_size),PNG_ALLOCATED)
{
if (nelements <= 0 || element_size == 0)
png_error(png_ptr, "internal error: array alloc");
{
png_warning(png_ptr, "internal error: array alloc");
return NULL;
}
return png_malloc_array_checked(png_ptr, nelements, element_size);
}