]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Tue, 10 Jul 2012 17:43:12 +0000 (17:43 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Tue, 10 Jul 2012 17:43:12 +0000 (17:43 +0000)
MagickCore/threshold.c

index bb121c7344ace423dc2f6a6c2a8e8b44cf7f195e..5da9719629059ec26fb35f4984ce94bf7a5b468c 100644 (file)
@@ -413,6 +413,9 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold,
       }
     for (x=0; x < (ssize_t) image->columns; x++)
     {
+      double
+        pixel;
+
       register ssize_t
         i;
 
@@ -421,6 +424,7 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold,
           q+=GetPixelChannels(image);
           continue;
         }
+      pixel=(double) GetPixelIntensity(image,q);
       for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
       {
         PixelChannel
@@ -433,7 +437,9 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold,
         traits=GetPixelChannelMapTraits(image,channel);
         if ((traits & UpdatePixelTrait) == 0)
           continue;
-        q[i]=(Quantum) ((MagickRealType) q[i] <= threshold ? 0 : QuantumRange);
+        if ((image->channel_mask & SyncChannels) == 0)
+          pixel=q[i];
+        q[i]=(Quantum) (pixel <= threshold ? 0 : QuantumRange);
       }
       q+=GetPixelChannels(image);
     }