From: cristy Date: Thu, 12 Jul 2012 20:08:52 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~5266 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=81629aa2b70d108b23034c40f29d40313e54629f;p=imagemagick --- diff --git a/MagickCore/threshold.c b/MagickCore/threshold.c index d01f079bd..5bb88ebbd 100644 --- a/MagickCore/threshold.c +++ b/MagickCore/threshold.c @@ -584,6 +584,9 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, } for (x=0; x < (ssize_t) image->columns; x++) { + double + pixel; + register ssize_t i; @@ -592,6 +595,7 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, q+=GetPixelChannels(image); continue; } + pixel=(double) GetPixelIntensity(image,q); for (i=0; i < (ssize_t) GetPixelChannels(image); i++) { PixelChannel @@ -604,7 +608,9 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, traits=GetPixelChannelMapTraits(image,channel); if ((traits & UpdatePixelTrait) == 0) continue; - if ((double) q[i] <= GetPixelInfoChannel(&threshold,channel)) + if (image->channel_mask != DefaultChannels) + pixel=q[i]; + if (pixel <= GetPixelInfoChannel(&threshold,channel)) q[i]=0; } q+=GetPixelChannels(image); @@ -1717,6 +1723,9 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, } for (x=0; x < (ssize_t) image->columns; x++) { + double + pixel; + register ssize_t i; @@ -1725,6 +1734,7 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, q+=GetPixelChannels(image); continue; } + pixel=(double) GetPixelIntensity(image,q); for (i=0; i < (ssize_t) GetPixelChannels(image); i++) { PixelChannel @@ -1737,7 +1747,9 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, traits=GetPixelChannelMapTraits(image,channel); if ((traits & UpdatePixelTrait) == 0) continue; - if ((double) q[i] > GetPixelInfoChannel(&threshold,channel)) + if (image->channel_mask != DefaultChannels) + pixel=q[i]; + if (pixel > GetPixelInfoChannel(&threshold,channel)) q[i]=QuantumRange; } q+=GetPixelChannels(image);