]> granicus.if.org Git - imagemagick/commitdiff
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=7437
authorCristy <urban-warrior@imagemagick.org>
Sat, 7 Apr 2018 00:21:52 +0000 (20:21 -0400)
committerCristy <urban-warrior@imagemagick.org>
Sat, 7 Apr 2018 00:21:52 +0000 (20:21 -0400)
coders/pwp.c

index fca3765888dc5afc21e83abbe0f99941e6a6ebcf..e5ae5c8805133c4a23ba9540aeb40af0193a49a7 100644 (file)
@@ -168,11 +168,14 @@ static Image *ReadPWPImage(const ImageInfo *image_info,ExceptionInfo *exception)
       image_info->filename);
   assert(exception != (ExceptionInfo *) NULL);
   assert(exception->signature == MagickCoreSignature);
-  pwp_image=AcquireImage(image_info,exception);
-  image=pwp_image;
-  status=OpenBlob(image_info,pwp_image,ReadBinaryBlobMode,exception);
+  image=AcquireImage(image_info,exception);
+  status=OpenBlob(image_info,image,ReadBinaryBlobMode,exception);
   if (status == MagickFalse)
-    return((Image *) NULL);
+    {
+      image=DestroyImage(image);
+      return((Image *) NULL);
+    }
+  pwp_image=image;
   memset(magick,0,sizeof(magick));
   count=ReadBlob(pwp_image,5,magick);
   if ((count != 5) || (LocaleNCompare((char *) magick,"SFW95",5) != 0))