]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Fri, 9 Oct 2009 18:20:57 +0000 (18:20 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Fri, 9 Oct 2009 18:20:57 +0000 (18:20 +0000)
coders/dcm.c

index c1c1ca36612c209af40a224e21737aa514e3f591..307366a9dd1d941e775239ed4219e1bb64a6d80f 100644 (file)
@@ -3363,7 +3363,8 @@ static Image *ReadDCMImage(const ImageInfo *image_info,ExceptionInfo *exception)
     signed_data=(unsigned long) (significant_bits == 16 ? 1 : 0);
   if ((strcmp(transfer_syntax,"1.2.840.10008.1.2.4.50") == 0) ||
       (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.70") == 0) ||
-      (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.90") == 0))
+      (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.90") == 0) ||
+      (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.91") == 0))
     {
       Image
         *images;
@@ -3456,11 +3457,11 @@ static Image *ReadDCMImage(const ImageInfo *image_info,ExceptionInfo *exception)
         (void) fclose(file);
         (void) FormatMagickString(read_info->filename,MaxTextExtent,
           "jpeg:%s",filename);
-        if (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.90") == 0)
+        if ((strcmp(transfer_syntax,"1.2.840.10008.1.2.4.90") == 0) ||
+            (strcmp(transfer_syntax,"1.2.840.10008.1.2.4.91") == 0))
           (void) FormatMagickString(read_info->filename,MaxTextExtent,
             "jp2:%s",filename);
         jpeg_image=ReadImage(read_info,exception);
-puts("c");
         if (jpeg_image != (Image *) NULL)
           {
             ResetImagePropertyIterator(image);
@@ -3797,6 +3798,12 @@ puts("c");
         if (status == MagickFalse)
           break;
       }
+    if (EOFBlob(image) != MagickFalse)
+      {
+        ThrowFileException(exception,CorruptImageError,"UnexpectedEndOfFile",
+          image->filename);
+        break;
+      }
   }
   /*
     Free resources.