From: Cristy Date: Sun, 27 Nov 2016 00:00:03 +0000 (-0500) Subject: ... X-Git-Tag: 7.0.3-9~32 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6e6ce01711b756809b6f699218688df3473d8051;p=imagemagick ... --- diff --git a/MagickCore/attribute.c b/MagickCore/attribute.c index b76ff01a3..717e7f690 100644 --- a/MagickCore/attribute.c +++ b/MagickCore/attribute.c @@ -407,7 +407,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) continue; for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -464,7 +464,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) continue; for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -1094,7 +1094,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1158,7 +1158,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/channel.c b/MagickCore/channel.c index 59cef665d..dcc015511 100644 --- a/MagickCore/channel.c +++ b/MagickCore/channel.c @@ -754,7 +754,7 @@ MagickExport Image *SeparateImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(separate_image,q); p+=GetPixelChannels(image); @@ -1009,7 +1009,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1138,7 +1138,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1281,7 +1281,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/composite.c b/MagickCore/composite.c index ac80ad9c8..64e649501 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -400,7 +400,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, register ssize_t i; - if (GetPixelReadMask(source_image,p) == 0) + if (GetPixelWriteMask(source_image,p) == QuantumRange) { p+=GetPixelChannels(source_image); q+=GetPixelChannels(image); @@ -486,7 +486,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, } for (x=0; x < (ssize_t) source_image->columns; x++) { - if (GetPixelReadMask(source_image,p) == 0) + if (GetPixelWriteMask(source_image,p) == QuantumRange) { p+=GetPixelChannels(source_image); q+=GetPixelChannels(image); @@ -1082,7 +1082,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, */ (void) GetOneVirtualPixel(source_image,x-x_offset,y-y_offset,source, exception); - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1241,7 +1241,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, break; } } - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { p+=GetPixelChannels(source_image); q+=GetPixelChannels(image); @@ -2244,7 +2244,7 @@ MagickExport MagickBooleanType TextureImage(Image *image,const Image *texture, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { p+=GetPixelChannels(texture_image); q+=GetPixelChannels(image); diff --git a/MagickCore/decorate.c b/MagickCore/decorate.c index a0ccca876..30b4d8406 100644 --- a/MagickCore/decorate.c +++ b/MagickCore/decorate.c @@ -441,7 +441,7 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { SetPixelBackgoundColor(frame_image,q); p+=GetPixelChannels(image); @@ -714,7 +714,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < y; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -732,7 +732,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) (image->columns-y); x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -750,7 +750,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -804,7 +804,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < (ssize_t) raise_info->width; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -824,7 +824,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, q+=GetPixelChannels(image); for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -878,7 +878,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < (ssize_t) (image->rows-y); x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -909,7 +909,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/effect.c b/MagickCore/effect.c index 5a33212fb..f182e6d96 100644 --- a/MagickCore/effect.c +++ b/MagickCore/effect.c @@ -336,7 +336,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) { SetPixelChannel(blur_image,channel,p[center+i],q); continue; @@ -657,7 +657,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius, (sharp_traits == UndefinedPixelTrait)) continue; if (((sharp_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) { SetPixelChannel(sharp_image,channel,p[center+i],q); continue; @@ -2136,7 +2136,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(blur_image,channel,p[i],q); continue; @@ -2935,7 +2935,7 @@ MagickExport Image *RotationalBlurImage(const Image *image,const double angle, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(blur_image,channel,p[i],q); continue; @@ -3249,7 +3249,7 @@ MagickExport Image *SelectiveBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) { SetPixelChannel(blur_image,channel,p[center+i],q); continue; @@ -3541,7 +3541,7 @@ MagickExport Image *ShadeImage(const Image *image,const MagickBooleanType gray, (shade_traits == UndefinedPixelTrait)) continue; if (((shade_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(linear_image,center) == 0)) + (GetPixelWriteMask(linear_image,center) == QuantumRange)) { SetPixelChannel(shade_image,channel,center[i],q); continue; @@ -3982,7 +3982,7 @@ MagickExport Image *UnsharpMaskImage(const Image *image,const double radius, (unsharp_traits == UndefinedPixelTrait)) continue; if (((unsharp_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(unsharp_image,channel,p[i],q); continue; diff --git a/MagickCore/enhance.c b/MagickCore/enhance.c index f74ed80b1..16b35151c 100644 --- a/MagickCore/enhance.c +++ b/MagickCore/enhance.c @@ -379,7 +379,7 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image, PixelTrait traits; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1233,7 +1233,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1415,7 +1415,7 @@ MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception) register const Quantum *magick_restrict r; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(enhance_image,q); p+=GetPixelChannels(image); @@ -1703,7 +1703,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1885,7 +1885,7 @@ MagickExport MagickBooleanType GammaImage(Image *image,const double gamma, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -2024,7 +2024,7 @@ MagickExport MagickBooleanType GrayscaleImage(Image *image, red, intensity; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -2458,7 +2458,7 @@ MagickExport MagickBooleanType LevelImage(Image *image,const double black_point, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -2614,7 +2614,7 @@ MagickExport MagickBooleanType LevelizeImage(Image *image, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -3317,7 +3317,7 @@ MagickExport MagickBooleanType ModulateImage(Image *image,const char *modulate, green, red; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -3504,7 +3504,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, register ssize_t j; - if ((GetPixelReadMask(image,q) == 0) || + if ((GetPixelWriteMask(image,q) == QuantumRange) || IsPixelGray(image,q) != MagickFalse) { q+=GetPixelChannels(image); @@ -3568,7 +3568,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, register ssize_t j; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -3872,7 +3872,7 @@ MagickExport MagickBooleanType SigmoidalContrastImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/fx.c b/MagickCore/fx.c index 869b07bd2..b06d3cd38 100644 --- a/MagickCore/fx.c +++ b/MagickCore/fx.c @@ -372,7 +372,7 @@ MagickExport Image *AddNoiseImage(const Image *image,const NoiseType noise_type, (noise_traits == UndefinedPixelTrait)) continue; if (((noise_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(noise_image,channel,p[i],q); continue; @@ -780,7 +780,7 @@ MagickExport Image *ColorizeImage(const Image *image,const char *blend, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(colorize_image,q) == 0)) + (GetPixelWriteMask(colorize_image,q) == QuantumRange)) continue; SetPixelChannel(colorize_image,(PixelChannel) i,ClampToQuantum( Colorize(q[i],GetPixelInfoChannel(&blend_percentage,(PixelChannel) i), @@ -3170,7 +3170,7 @@ MagickExport Image *FxImage(const Image *image,const char *expression, (fx_traits == UndefinedPixelTrait)) continue; if (((fx_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(fx_image,channel,p[i],q); continue; @@ -3356,7 +3356,7 @@ MagickExport Image *ImplodeImage(const Image *image,const double amount, /* Determine if the pixel is within an ellipse. */ - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(implode_image,q); p+=GetPixelChannels(image); @@ -3600,7 +3600,7 @@ MagickExport Image *MorphImages(const Image *image,const size_t number_frames, (morph_traits == UndefinedPixelTrait)) continue; if (((morph_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(morph_images,p) == 0)) + (GetPixelWriteMask(morph_images,p) == QuantumRange)) { SetPixelChannel(morph_image,channel,p[i],q); continue; @@ -4547,7 +4547,7 @@ MagickExport Image *SketchImage(const Image *image,const double radius, register ssize_t i; - if (GetPixelReadMask(random_image,q) == 0) + if (GetPixelWriteMask(random_image,q) == QuantumRange) { q+=GetPixelChannels(random_image); continue; @@ -4711,7 +4711,7 @@ MagickExport MagickBooleanType SolarizeImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -5201,7 +5201,7 @@ MagickExport Image *SwirlImage(const Image *image,double degrees, /* Determine if the pixel is within an ellipse. */ - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(swirl_image,q); p+=GetPixelChannels(image); @@ -5437,7 +5437,7 @@ MagickExport Image *TintImage(const Image *image,const char *blend, (tint_traits == UndefinedPixelTrait)) continue; if (((tint_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(tint_image,channel,p[i],q); continue; diff --git a/MagickCore/image.c b/MagickCore/image.c index 4ad6084e8..89905349e 100644 --- a/MagickCore/image.c +++ b/MagickCore/image.c @@ -576,7 +576,7 @@ MagickExport Image *AppendImages(const Image *images, GetPixelInfo(next,&pixel); for (x=0; x < (ssize_t) next->columns; x++) { - if (GetPixelReadMask(next,p) == 0) + if (GetPixelWriteMask(next,p) == QuantumRange) { SetPixelBackgoundColor(append_image,q); p+=GetPixelChannels(next); @@ -1818,7 +1818,7 @@ MagickExport MagickBooleanType IsHighDynamicRangeImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -2970,7 +2970,7 @@ MagickExport MagickBooleanType SetImageAlpha(Image *image,const Quantum alpha, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,q) != 0) + if (GetPixelWriteMask(image,q) != QuantumRange) SetPixelAlpha(image,alpha,q); q+=GetPixelChannels(image); } diff --git a/MagickCore/morphology.c b/MagickCore/morphology.c index 9f4a7b790..67cb64b95 100644 --- a/MagickCore/morphology.c +++ b/MagickCore/morphology.c @@ -2712,7 +2712,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, (morphology_traits == UndefinedPixelTrait)) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) { SetPixelChannel(morphology_image,channel,p[center+i],q); continue; @@ -2863,7 +2863,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, (morphology_traits == UndefinedPixelTrait)) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) { SetPixelChannel(morphology_image,channel,p[center+i],q); continue; @@ -3344,7 +3344,7 @@ static ssize_t MorphologyPrimitiveDirect(Image *image, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) continue; pixels=p; pixel=(double) QuantumRange; @@ -3505,7 +3505,7 @@ static ssize_t MorphologyPrimitiveDirect(Image *image, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p+center) == 0)) + (GetPixelWriteMask(image,p+center) == QuantumRange)) continue; pixels=p; pixel=(double) QuantumRange; diff --git a/MagickCore/paint.c b/MagickCore/paint.c index 1a1125a37..fe62bb80f 100644 --- a/MagickCore/paint.c +++ b/MagickCore/paint.c @@ -830,7 +830,7 @@ MagickExport Image *OilPaintImage(const Image *image,const double radius, (paint_traits == UndefinedPixelTrait)) continue; if (((paint_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(linear_image,p) == 0)) + (GetPixelWriteMask(linear_image,p) == QuantumRange)) { SetPixelChannel(paint_image,channel,p[center+i],q); continue; @@ -971,6 +971,11 @@ MagickExport MagickBooleanType OpaquePaintImage(Image *image, pixel=zero; for (x=0; x < (ssize_t) image->columns; x++) { + if (GetPixelWriteMask(image,q) == QuantumRange) + { + q+=GetPixelChannels(image); + continue; + } GetPixelInfoPixel(image,q,&pixel); if (IsFuzzyEquivalencePixelInfo(&pixel,&conform_target) != invert) SetPixelViaPixelInfo(image,&conform_fill,q); diff --git a/MagickCore/quantum-export.c b/MagickCore/quantum-export.c index 0f8315975..8e5568bda 100644 --- a/MagickCore/quantum-export.c +++ b/MagickCore/quantum-export.c @@ -3920,7 +3920,7 @@ MagickExport size_t ExportQuantumPixels(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/quantum-import.c b/MagickCore/quantum-import.c index b3cdc7dc3..75bd06c0f 100644 --- a/MagickCore/quantum-import.c +++ b/MagickCore/quantum-import.c @@ -4280,7 +4280,7 @@ MagickExport size_t ImportQuantumPixels(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/resize.c b/MagickCore/resize.c index d48cf88bc..508d0c37b 100644 --- a/MagickCore/resize.c +++ b/MagickCore/resize.c @@ -1741,7 +1741,7 @@ MagickExport Image *InterpolativeResizeImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(resize_image,q) == 0) + if (GetPixelWriteMask(resize_image,q) == QuantumRange) { q+=GetPixelChannels(resize_image); continue; @@ -2538,7 +2538,7 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter, (resize_traits == UndefinedPixelTrait)) continue; if (((resize_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(resize_image,q) == 0)) + (GetPixelWriteMask(resize_image,q) == QuantumRange)) { j=(ssize_t) (MagickMin(MagickMax(bisect,(double) start),(double) stop-1.0)+0.5); @@ -2754,7 +2754,7 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter, (resize_traits == UndefinedPixelTrait)) continue; if (((resize_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(resize_image,q) == 0)) + (GetPixelWriteMask(resize_image,q) == QuantumRange)) { j=(ssize_t) (MagickMin(MagickMax(bisect,(double) start),(double) stop-1.0)+0.5); @@ -3089,7 +3089,7 @@ MagickExport Image *SampleImage(const Image *image,const size_t columns, register ssize_t i; - if (GetPixelReadMask(sample_image,q) == 0) + if (GetPixelWriteMask(sample_image,q) == QuantumRange) { q+=GetPixelChannels(sample_image); continue; @@ -3302,7 +3302,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -3345,7 +3345,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -3389,7 +3389,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -3437,7 +3437,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, */ for (x=0; x < (ssize_t) scale_image->columns; x++) { - if (GetPixelReadMask(scale_image,q) == 0) + if (GetPixelWriteMask(scale_image,q) == QuantumRange) { q+=GetPixelChannels(scale_image); continue; @@ -3533,7 +3533,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, */ for (x=0; x < (ssize_t) scale_image->columns; x++) { - if (GetPixelReadMask(scale_image,q) == 0) + if (GetPixelWriteMask(scale_image,q) == QuantumRange) { q+=GetPixelChannels(scale_image); continue; diff --git a/MagickCore/shear.c b/MagickCore/shear.c index 5d866b9eb..d5600610d 100644 --- a/MagickCore/shear.c +++ b/MagickCore/shear.c @@ -830,7 +830,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, register ssize_t i; - if (GetPixelReadMask(image,tile_pixels) == 0) + if (GetPixelWriteMask(image,tile_pixels) == QuantumRange) { tile_pixels-=width*GetPixelChannels(image); q+=GetPixelChannels(rotate_image); @@ -920,7 +920,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, i; q-=GetPixelChannels(rotate_image); - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -1043,7 +1043,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, register ssize_t i; - if (GetPixelReadMask(image,tile_pixels) == 0) + if (GetPixelWriteMask(image,tile_pixels) == QuantumRange) { tile_pixels+=width*GetPixelChannels(image); q+=GetPixelChannels(rotate_image); diff --git a/MagickCore/signature.c b/MagickCore/signature.c index 7051dbb38..c0d803df1 100644 --- a/MagickCore/signature.c +++ b/MagickCore/signature.c @@ -520,7 +520,7 @@ MagickExport MagickBooleanType SignatureImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; diff --git a/MagickCore/threshold.c b/MagickCore/threshold.c index a23b832f5..8f8c1fa43 100644 --- a/MagickCore/threshold.c +++ b/MagickCore/threshold.c @@ -274,7 +274,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image, (threshold_traits == UndefinedPixelTrait)) continue; if (((threshold_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(threshold_image,channel,p[center+i],q); continue; @@ -309,7 +309,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image, (threshold_traits == UndefinedPixelTrait)) continue; if (((threshold_traits & CopyPixelTrait) != 0) || - (GetPixelReadMask(image,p) == 0)) + (GetPixelWriteMask(image,p) == QuantumRange)) { SetPixelChannel(threshold_image,channel,p[center+i],q); continue; @@ -455,7 +455,7 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -620,7 +620,7 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -756,7 +756,7 @@ MagickExport MagickBooleanType ClampImage(Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1397,7 +1397,7 @@ MagickExport MagickBooleanType OrderedDitherImage(Image *image, n; n=0; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1564,7 +1564,7 @@ MagickExport MagickBooleanType PerceptibleImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1701,7 +1701,7 @@ MagickExport MagickBooleanType RandomThresholdImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; @@ -1875,7 +1875,7 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/transform.c b/MagickCore/transform.c index 68fdcfd57..fac4b08ef 100644 --- a/MagickCore/transform.c +++ b/MagickCore/transform.c @@ -697,7 +697,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(crop_image,q); p+=GetPixelChannels(image); @@ -1050,7 +1050,7 @@ MagickExport Image *ExcerptImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(excerpt_image,q); p+=GetPixelChannels(image); @@ -1248,7 +1248,7 @@ MagickExport Image *FlipImage(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(flip_image,q); p+=GetPixelChannels(image); @@ -1391,7 +1391,7 @@ MagickExport Image *FlopImage(const Image *image,ExceptionInfo *exception) i; q-=GetPixelChannels(flop_image); - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; @@ -1517,7 +1517,7 @@ static MagickBooleanType CopyImageRegion(Image *destination,const Image *source, register ssize_t i; - if (GetPixelReadMask(source,p) == 0) + if (GetPixelWriteMask(source,p) == QuantumRange) { SetPixelBackgoundColor(destination,q); p+=GetPixelChannels(source); @@ -1845,7 +1845,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(splice_image,q); p+=GetPixelChannels(image); @@ -1876,7 +1876,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { SetPixelBackgoundColor(splice_image,q); p+=GetPixelChannels(image); @@ -1950,7 +1950,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { SetPixelBackgoundColor(splice_image,q); p+=GetPixelChannels(image); @@ -1981,7 +1981,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { SetPixelBackgoundColor(splice_image,q); p+=GetPixelChannels(image); @@ -2224,7 +2224,7 @@ MagickExport Image *TransposeImage(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelReadMask(image,q) == 0) + if (GetPixelWriteMask(image,q) == QuantumRange) { SetPixelBackgoundColor(transpose_image,q); p+=GetPixelChannels(image); @@ -2373,7 +2373,7 @@ MagickExport Image *TransverseImage(const Image *image,ExceptionInfo *exception) i; q-=GetPixelChannels(transverse_image); - if (GetPixelReadMask(image,p) == 0) + if (GetPixelWriteMask(image,p) == QuantumRange) { p+=GetPixelChannels(image); continue; diff --git a/MagickWand/compare.c b/MagickWand/compare.c index cb57c4512..9d5ed53b1 100644 --- a/MagickWand/compare.c +++ b/MagickWand/compare.c @@ -124,6 +124,7 @@ static MagickBooleanType CompareUsage(void) " de-emphasize pixel differences with this color", "-metric type measure differences between images with this metric", "-monitor monitor progress", + "-negate replace every pixel with its complementary color ", "-profile filename add, delete, or apply an image profile", "-quality value JPEG/MIFF/PNG compression level", "-quiet suppress all warning messages", @@ -729,6 +730,12 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, break; ThrowCompareException(OptionError,"UnrecognizedOption",option) } + case 'n': + { + if (LocaleCompare("negate",option+1) == 0) + break; + ThrowCompareException(OptionError,"UnrecognizedOption",option) + } case 'p': { if (LocaleCompare("profile",option+1) == 0) diff --git a/MagickWand/mogrify.c b/MagickWand/mogrify.c index 63bfc5d09..9ce3f2726 100644 --- a/MagickWand/mogrify.c +++ b/MagickWand/mogrify.c @@ -2132,7 +2132,7 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc, /* Remove a mask. */ - (void) SetImageMask(*image,ReadPixelMask,(Image *) NULL, + (void) SetImageMask(*image,WritePixelMask,(Image *) NULL, exception); break; } @@ -2142,7 +2142,7 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc, mask=GetImageCache(mogrify_info,argv[i+1],exception); if (mask == (Image *) NULL) break; - (void) SetImageMask(*image,ReadPixelMask,mask,exception); + (void) SetImageMask(*image,WritePixelMask,mask,exception); mask=DestroyImage(mask); break; } diff --git a/MagickWand/operation.c b/MagickWand/operation.c index c675deeb2..dcf7a4c84 100644 --- a/MagickWand/operation.c +++ b/MagickWand/operation.c @@ -2732,8 +2732,8 @@ static MagickBooleanType CLISimpleOperatorImage(MagickCLI *cli_wand, } if (LocaleCompare("mask",option+1) == 0) { - CLIWandWarnReplaced("-read-mask"); - (void) CLISimpleOperatorImage(cli_wand,"-read-mask",NULL,NULL, + CLIWandWarnReplaced("-write-mask"); + (void) CLISimpleOperatorImage(cli_wand,"-write-mask",NULL,NULL, exception); break; }