]> granicus.if.org Git - imagemagick/commitdiff
...
authorCristy <urban-warrior@imagemagick.org>
Sat, 31 Mar 2018 23:53:05 +0000 (19:53 -0400)
committerCristy <urban-warrior@imagemagick.org>
Sat, 31 Mar 2018 23:53:05 +0000 (19:53 -0400)
coders/viff.c

index aae1a2ad775bc4e514e13869b156a33352aacdad..e445766e8c2c1dbd5a54c11d4d05d95a29f9f27d 100644 (file)
@@ -490,6 +490,16 @@ static Image *ReadVIFFImage(const ImageInfo *image_info,
     if ((image_info->ping != MagickFalse) && (image_info->number_scenes != 0))
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (viff_info.data_storage_type == VFF_TYP_BIT)
+      {
+        /*
+          Create bi-level colormap.
+        */
+        image->colors=2;
+        if (AcquireImageColormap(image,image->colors,exception) == MagickFalse)
+          ThrowReaderException(ResourceLimitError,"MemoryAllocationFailed");
+        image->colorspace=GRAYColorspace;
+      }
     /*
       Allocate VIFF pixels.
     */
@@ -1188,7 +1198,6 @@ RestoreMSCWarning
             /*
               Convert PseudoClass image to a VIFF monochrome image.
             */
-            (void) SetImageType(image,BilevelType,exception);
             for (y=0; y < (ssize_t) image->rows; y++)
             {
               p=GetVirtualPixels(image,0,y,image->columns,1,exception);