]> granicus.if.org Git - imagemagick/commitdiff
https://github.com/ImageMagick/ImageMagick/issues/509
authorCristy <urban-warrior@imagemagick.org>
Thu, 8 Jun 2017 13:09:28 +0000 (09:09 -0400)
committerCristy <urban-warrior@imagemagick.org>
Thu, 8 Jun 2017 13:09:28 +0000 (09:09 -0400)
coders/dpx.c

index fd32efb989b7858a486991e229c133e7f862f81c..cb9870dade4692af11a50ce098fd8eb90ce0e1d7 100644 (file)
@@ -1117,7 +1117,11 @@ static Image *ReadDPXImage(const ImageInfo *image_info,ExceptionInfo *exception)
         }
     }
   for ( ; offset < (MagickOffsetType) dpx.file.image_offset; offset++)
-    (void) ReadBlobByte(image);
+    if (ReadBlobByte(image) == EOF)
+      break;
+  if (EOFBlob(image) != MagickFalse)
+    ThrowFileException(exception,CorruptImageError,"UnexpectedEndOfFile",
+      image->filename);
   if (image_info->ping != MagickFalse)
     {
       (void) CloseBlob(image);
@@ -1142,7 +1146,8 @@ static Image *ReadDPXImage(const ImageInfo *image_info,ExceptionInfo *exception)
            offset=SeekBlob(image,data_offset,SEEK_SET);
          else
            for ( ; offset < data_offset; offset++)
-             (void) ReadBlobByte(image);
+             if (ReadBlobByte(image) == EOF)
+               break;
           if (offset != data_offset)
             ThrowReaderException(CorruptImageError,"UnableToReadImageData");
        }