]> granicus.if.org Git - imagemagick/commitdiff
Call SetImageExtent() just before the scanlines are read
authorCristy <urban-warrior@imagemagick.org>
Wed, 6 Jul 2016 01:02:55 +0000 (21:02 -0400)
committerCristy <urban-warrior@imagemagick.org>
Wed, 6 Jul 2016 01:02:55 +0000 (21:02 -0400)
coders/png.c

index 6d0aaaf6f7f658144f84312ed30ed79010c62333..97c05a26319a9276ba9c8ee3c93cc3012772798e 100644 (file)
@@ -2940,10 +2940,6 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
   image->columns=ping_width;
   image->rows=ping_height;
 
-  status=SetImageExtent(image,image->columns,image->rows,exception);
-  if (status == MagickFalse)
-    return(DestroyImageList(image));
-
   if (((int) ping_color_type == PNG_COLOR_TYPE_GRAY) ||
       ((int) ping_color_type == PNG_COLOR_TYPE_GRAY_ALPHA))
     {
@@ -3145,6 +3141,10 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
     (void) LogMagickEvent(CoderEvent,GetMagickModule(),
       "    Reading PNG IDAT chunk(s)");
 
+  status=SetImageExtent(image,image->columns,image->rows,exception);
+  if (status == MagickFalse)
+    return(DestroyImageList(image));
+
   if (num_passes > 1)
     pixel_info=AcquireVirtualMemory(image->rows,ping_rowbytes*
       sizeof(*ping_pixels));