]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Sun, 18 May 2014 11:32:34 +0000 (11:32 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Sun, 18 May 2014 11:32:34 +0000 (11:32 +0000)
MagickCore/attribute.c
coders/viff.c

index ec953ec4e2ea01dfc1b1174b70843c5c9bb24f25..421cef003e0dd81cd7188826e0d8c8db4c2a5f39 100644 (file)
@@ -1176,6 +1176,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type,
           status=QuantizeImage(quantize_info,image,exception);
           quantize_info=DestroyQuantizeInfo(quantize_info);
         }
+      image->colors=2;
       image->alpha_trait=UndefinedPixelTrait;
       break;
     }
index 5095ba20553f46824ed16328f0457e3b3670260d..8ca223deae46271771b548289c28bbe6f3a701f8 100644 (file)
@@ -619,8 +619,6 @@ static Image *ReadVIFFImage(const ImageInfo *image_info,
         /*
           Convert bitmap scanline.
         */
-        (void) SetImageType(image,BilevelType,exception);
-        (void) SetImageType(image,PaletteType,exception);
         for (y=0; y < (ssize_t) image->rows; y++)
         {
           q=QueueAuthenticPixels(image,0,y,image->columns,1,exception);
@@ -630,12 +628,8 @@ static Image *ReadVIFFImage(const ImageInfo *image_info,
           {
             for (bit=0; bit < 8; bit++)
             {
-              if (GetPixelLuma(image,q) < (QuantumRange/2.0))
-                {
-                  quantum=(size_t) GetPixelIndex(image,q);
-                  quantum|=0x01;
-                  SetPixelIndex(image,quantum,q);
-                }
+              quantum=((*p) & (0x01 << bit) ? 0 : 1);
+              SetPixelIndex(image,quantum,q);
               q+=GetPixelChannels(image);
             }
             p++;
@@ -643,13 +637,11 @@ static Image *ReadVIFFImage(const ImageInfo *image_info,
           if ((image->columns % 8) != 0)
             {
               for (bit=0; bit < (ssize_t) (image->columns % 8); bit++)
-                if (GetPixelLuma(image,q) < (QuantumRange/2.0))
-                  {
-                    quantum=(size_t) GetPixelIndex(image,q);
-                    quantum|=0x01;
-                    SetPixelIndex(image,quantum,q);
-                    q+=GetPixelChannels(image);
-                  }
+              {
+                quantum=((*p) & (0x01 << bit) ? 0 : 1);
+                SetPixelIndex(image,quantum,q);
+                q+=GetPixelChannels(image);
+              }
               p++;
             }
           if (SyncAuthenticPixels(image,exception) == MagickFalse)