]> granicus.if.org Git - imagemagick/commitdiff
https://github.com/ImageMagick/ImageMagick/issues/596
authorCristy <urban-warrior@imagemagick.org>
Fri, 21 Jul 2017 23:56:25 +0000 (19:56 -0400)
committerCristy <urban-warrior@imagemagick.org>
Fri, 21 Jul 2017 23:56:25 +0000 (19:56 -0400)
coders/png.c

index b9158086abb8d25349ed6ebf8ce5d4bed4bd6096..3d33163ce480903771ab76870abb19719011a113 100644 (file)
@@ -3253,7 +3253,12 @@ static Image *ReadOnePNGImage(MngInfo *mng_info,
 
   status=SetImageExtent(image,image->columns,image->rows,exception);
   if (status == MagickFalse)
-    return(DestroyImageList(image));
+    {
+#ifdef IMPNG_SETJMP_NOT_THREAD_SAFE
+      UnlockSemaphoreInfo(ping_semaphore);
+#endif
+      return(DestroyImageList(image));
+    }
 
   if (num_passes > 1)
     pixel_info=AcquireVirtualMemory(image->rows,ping_rowbytes*