From: cristy Date: Mon, 8 Apr 2013 00:50:13 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~3918 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=883fde11debec15cedb05dc5d7228d8588066bc0;p=imagemagick --- diff --git a/MagickCore/attribute.c b/MagickCore/attribute.c index 86ac12e30..ef8c3328f 100644 --- a/MagickCore/attribute.c +++ b/MagickCore/attribute.c @@ -413,7 +413,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -423,7 +423,8 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) PixelChannel channel=GetPixelChannelChannel(image,i); PixelTrait traits=GetPixelChannelTraits(image,channel); if ((traits == UndefinedPixelTrait) || - (channel == IndexPixelChannel) || (channel == MaskPixelChannel)) + (channel == IndexPixelChannel) || + (channel == ReadMaskPixelChannel) || (channel == MetaPixelChannel)) continue; if (depth_map[ScaleQuantumToMap(p[i])] > current_depth[id]) current_depth[id]=depth_map[ScaleQuantumToMap(p[i])]; @@ -471,7 +472,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -487,7 +488,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) channel=GetPixelChannelChannel(image,i); traits=GetPixelChannelTraits(image,channel); if ((traits == UndefinedPixelTrait) || (channel == IndexPixelChannel) || - (channel == MaskPixelChannel)) + (channel == ReadMaskPixelChannel)) continue; while (current_depth[id] < MAGICKCORE_QUANTUM_DEPTH) { @@ -996,7 +997,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1012,7 +1013,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, channel=GetPixelChannelChannel(image,i); traits=GetPixelChannelTraits(image,channel); if ((traits == UndefinedPixelTrait) || - (channel == IndexPixelChannel) || (channel == MaskPixelChannel)) + (channel == IndexPixelChannel) || (channel == ReadMaskPixelChannel)) continue; q[i]=depth_map[ScaleQuantumToMap(q[i])]; } @@ -1059,7 +1060,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1075,7 +1076,7 @@ MagickExport MagickBooleanType SetImageDepth(Image *image, channel=GetPixelChannelChannel(image,i); traits=GetPixelChannelTraits(image,channel); if ((traits == UndefinedPixelTrait) || (channel == IndexPixelChannel) || - (channel == MaskPixelChannel)) + (channel == ReadMaskPixelChannel)) continue; q[i]=ScaleAnyToQuantum(ScaleQuantumToAny(q[i],range),range); } diff --git a/MagickCore/cache-private.h b/MagickCore/cache-private.h index 51afa32f7..b106cc6c2 100644 --- a/MagickCore/cache-private.h +++ b/MagickCore/cache-private.h @@ -116,7 +116,8 @@ typedef struct _CacheInfo alpha_trait; MagickBooleanType - mask; + read_mask, + write_mask; size_t columns, diff --git a/MagickCore/cache.c b/MagickCore/cache.c index 1f2df2f08..be869ab95 100644 --- a/MagickCore/cache.c +++ b/MagickCore/cache.c @@ -1464,7 +1464,8 @@ static inline MagickBooleanType ValidatePixelCacheMorphology( if ((image->storage_class != cache_info->storage_class) || (image->colorspace != cache_info->colorspace) || (image->alpha_trait != cache_info->alpha_trait) || - (image->mask != cache_info->mask) || + (image->read_mask != cache_info->read_mask) || + (image->write_mask != cache_info->write_mask) || (image->columns != cache_info->columns) || (image->rows != cache_info->rows) || (image->number_channels != cache_info->number_channels) || @@ -3455,7 +3456,8 @@ static MagickBooleanType OpenPixelCache(Image *image,const MapMode mode, cache_info->storage_class=image->storage_class; cache_info->colorspace=image->colorspace; cache_info->alpha_trait=image->alpha_trait; - cache_info->mask=image->mask; + cache_info->read_mask=image->read_mask; + cache_info->write_mask=image->write_mask; cache_info->rows=image->rows; cache_info->columns=image->columns; InitializePixelChannelMap(image); diff --git a/MagickCore/channel.c b/MagickCore/channel.c index a6ef95d7d..0d829c3ea 100644 --- a/MagickCore/channel.c +++ b/MagickCore/channel.c @@ -677,7 +677,7 @@ MagickExport Image *SeparateImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(separate_image); diff --git a/MagickCore/compare.c b/MagickCore/compare.c index 192397b4f..79520e73c 100644 --- a/MagickCore/compare.c +++ b/MagickCore/compare.c @@ -221,7 +221,7 @@ MagickExport Image *CompareImages(Image *image,const Image *reconstruct_image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { SetPixelInfoPixel(highlight_image,&lowlight,r); p+=GetPixelChannels(image); @@ -385,7 +385,7 @@ static MagickBooleanType GetAbsoluteDistortion(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -508,7 +508,7 @@ static MagickBooleanType GetFuzzDistortion(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -608,7 +608,7 @@ static MagickBooleanType GetMeanAbsoluteDistortion(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -701,7 +701,7 @@ static MagickBooleanType GetMeanErrorPerPixel(Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -799,7 +799,7 @@ static MagickBooleanType GetMeanSquaredDistortion(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -911,7 +911,7 @@ static MagickBooleanType GetNormalizedCrossCorrelationDistortion( register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -1030,7 +1030,7 @@ static MagickBooleanType GetPeakAbsoluteDistortion(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -1439,7 +1439,7 @@ MagickExport MagickBooleanType IsImagesEqual(Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(reconstruct_image); @@ -1645,7 +1645,7 @@ MagickExport Image *SimilarityImage(Image *image,const Image *reference, offset->y=y; *similarity_metric=similarity; } - if (GetPixelMask(similarity_image,q) == 0) + if (GetPixelReadMask(similarity_image,q) == 0) { q+=GetPixelChannels(similarity_image); continue; diff --git a/MagickCore/composite.c b/MagickCore/composite.c index 306750a5a..2ce5dc456 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -431,7 +431,7 @@ static MagickBooleanType CompositeOverImage(Image *image, Sc: source color. Dc: destination color. */ - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -457,7 +457,7 @@ static MagickBooleanType CompositeOverImage(Image *image, Sa: normalized source alpha. Da: normalized destination alpha. */ - if (GetPixelMask(composite_image,p) == 0) + if (GetPixelReadMask(composite_image,p) == 0) { p+=GetPixelChannels(composite_image); channels=GetPixelChannels(composite_image); @@ -645,7 +645,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, register ssize_t i; - if (GetPixelMask(composite_image,p) == 0) + if (GetPixelReadMask(composite_image,p) == 0) { p+=GetPixelChannels(composite_image); q+=GetPixelChannels(image); @@ -1285,7 +1285,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, */ (void) GetOneVirtualPixel(composite_image,x-x_offset,y-y_offset, source,exception); - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1451,7 +1451,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, break; } } - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(composite_image); q+=GetPixelChannels(image); @@ -2459,7 +2459,7 @@ MagickExport MagickBooleanType TextureImage(Image *image,const Image *texture, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(texture_image); q+=GetPixelChannels(image); diff --git a/MagickCore/decorate.c b/MagickCore/decorate.c index 455a6f45c..57b18c776 100644 --- a/MagickCore/decorate.c +++ b/MagickCore/decorate.c @@ -451,7 +451,7 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(frame_image); @@ -720,7 +720,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < y; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -738,7 +738,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) (image->columns-y); x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -756,7 +756,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -810,7 +810,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < (ssize_t) raise_info->width; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -830,7 +830,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, q+=GetPixelChannels(image); for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -884,7 +884,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for (x=0; x < (ssize_t) (image->rows-y); x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -915,7 +915,7 @@ MagickExport MagickBooleanType RaiseImage(Image *image, } for ( ; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/distribute-cache.c b/MagickCore/distribute-cache.c index b9c2b17ee..2a8206194 100644 --- a/MagickCore/distribute-cache.c +++ b/MagickCore/distribute-cache.c @@ -452,9 +452,10 @@ static MagickBooleanType OpenDistributeCache(SplayTreeInfo *registry, if (image == (Image *) NULL) return(MagickFalse); length=sizeof(image->storage_class)+sizeof(image->colorspace)+ - sizeof(image->alpha_trait)+sizeof(image->mask)+sizeof(image->columns)+ - sizeof(image->rows)+sizeof(image->number_channels)+MaxPixelChannels* - sizeof(*image->channel_map)+sizeof(image->metacontent_extent); + sizeof(image->alpha_trait)+sizeof(image->read_mask)+ + sizeof(image->write_mask)+sizeof(image->columns)+sizeof(image->rows)+ + sizeof(image->number_channels)+MaxPixelChannels*sizeof(*image->channel_map)+ + sizeof(image->metacontent_extent); count=dpc_read(file,length,message); if (count != (MagickOffsetType) length) return(MagickFalse); @@ -468,8 +469,10 @@ static MagickBooleanType OpenDistributeCache(SplayTreeInfo *registry, p+=sizeof(image->colorspace); (void) memcpy(&image->alpha_trait,p,sizeof(image->alpha_trait)); p+=sizeof(image->alpha_trait); - (void) memcpy(&image->mask,p,sizeof(image->mask)); - p+=sizeof(image->mask); + (void) memcpy(&image->read_mask,p,sizeof(image->read_mask)); + p+=sizeof(image->read_mask); + (void) memcpy(&image->write_mask,p,sizeof(image->write_mask)); + p+=sizeof(image->write_mask); (void) memcpy(&image->columns,p,sizeof(image->columns)); p+=sizeof(image->columns); (void) memcpy(&image->rows,p,sizeof(image->rows)); @@ -1084,8 +1087,10 @@ MagickPrivate MagickBooleanType OpenDistributePixelCache( p+=sizeof(image->colorspace); (void) memcpy(p,&image->alpha_trait,sizeof(image->alpha_trait)); p+=sizeof(image->alpha_trait); - (void) memcpy(p,&image->mask,sizeof(image->mask)); - p+=sizeof(image->mask); + (void) memcpy(p,&image->read_mask,sizeof(image->read_mask)); + p+=sizeof(image->read_mask); + (void) memcpy(p,&image->write_mask,sizeof(image->write_mask)); + p+=sizeof(image->write_mask); (void) memcpy(p,&image->columns,sizeof(image->columns)); p+=sizeof(image->columns); (void) memcpy(p,&image->rows,sizeof(image->rows)); diff --git a/MagickCore/effect.c b/MagickCore/effect.c index 18874229b..3b5ac93a6 100644 --- a/MagickCore/effect.c +++ b/MagickCore/effect.c @@ -384,7 +384,7 @@ MagickExport Image *AdaptiveBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) { SetPixelChannel(blur_image,channel,p[center+i],q); continue; @@ -709,7 +709,7 @@ MagickExport Image *AdaptiveSharpenImage(const Image *image,const double radius, (sharp_traits == UndefinedPixelTrait)) continue; if (((sharp_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) { SetPixelChannel(sharp_image,channel,p[center+i],q); continue; @@ -1617,7 +1617,7 @@ MagickExport Image *MotionBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(blur_image,channel,p[i],q); continue; @@ -2410,7 +2410,7 @@ MagickExport Image *RadialBlurImage(const Image *image,const double angle, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(blur_image,channel,p[i],q); continue; @@ -2719,7 +2719,7 @@ MagickExport Image *SelectiveBlurImage(const Image *image,const double radius, (blur_traits == UndefinedPixelTrait)) continue; if (((blur_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) { SetPixelChannel(blur_image,channel,p[center+i],q); continue; @@ -3010,7 +3010,7 @@ MagickExport Image *ShadeImage(const Image *image,const MagickBooleanType gray, (shade_traits == UndefinedPixelTrait)) continue; if (((shade_traits & CopyPixelTrait) != 0) || - (GetPixelMask(linear_image,center) == 0)) + (GetPixelReadMask(linear_image,center) == 0)) { SetPixelChannel(shade_image,channel,center[i],q); continue; @@ -3444,7 +3444,7 @@ MagickExport Image *UnsharpMaskImage(const Image *image,const double radius, (unsharp_traits == UndefinedPixelTrait)) continue; if (((unsharp_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) != 0)) + (GetPixelReadMask(image,p) != 0)) { SetPixelChannel(unsharp_image,channel,p[i],q); continue; diff --git a/MagickCore/enhance.c b/MagickCore/enhance.c index fbba44c55..77a5be8a4 100644 --- a/MagickCore/enhance.c +++ b/MagickCore/enhance.c @@ -374,7 +374,7 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image, GetPixelInfo(image,&pixel); for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1220,7 +1220,7 @@ MagickExport MagickBooleanType ContrastStretchImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1374,7 +1374,7 @@ MagickExport Image *EnhanceImage(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(enhance_image); @@ -1675,7 +1675,7 @@ MagickExport MagickBooleanType EqualizeImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1836,7 +1836,7 @@ MagickExport MagickBooleanType GammaImage(Image *image,const double gamma, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1980,7 +1980,7 @@ MagickExport MagickBooleanType GrayscaleImage(Image *image, red, intensity; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -2390,7 +2390,7 @@ MagickExport MagickBooleanType LevelImage(Image *image,const double black_point, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -2545,7 +2545,7 @@ MagickExport MagickBooleanType LevelizeImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -3347,7 +3347,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, register ssize_t i; - if ((GetPixelMask(image,q) == 0) || + if ((GetPixelReadMask(image,q) == 0) || (IsPixelGray(image,q) != MagickFalse)) { q+=GetPixelChannels(image); @@ -3411,7 +3411,7 @@ MagickExport MagickBooleanType NegateImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -3715,7 +3715,7 @@ MagickExport MagickBooleanType SigmoidalContrastImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/fx.c b/MagickCore/fx.c index d94bfeeb3..bfddc3dbb 100644 --- a/MagickCore/fx.c +++ b/MagickCore/fx.c @@ -360,7 +360,7 @@ MagickExport Image *AddNoiseImage(const Image *image,const NoiseType noise_type, (noise_traits == UndefinedPixelTrait)) continue; if (((noise_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(noise_image,channel,p[i],q); continue; @@ -777,7 +777,7 @@ MagickExport Image *ColorizeImage(const Image *image,const char *blend, (colorize_traits == UndefinedPixelTrait)) continue; if (((colorize_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(colorize_image,channel,p[i],q); continue; @@ -3102,7 +3102,7 @@ MagickExport Image *FxImage(const Image *image,const char *expression, (fx_traits == UndefinedPixelTrait)) continue; if (((fx_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(fx_image,channel,p[i],q); continue; @@ -3285,7 +3285,7 @@ MagickExport Image *ImplodeImage(const Image *image,const double amount, /* Determine if the pixel is within an ellipse. */ - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(implode_image); @@ -3527,7 +3527,7 @@ MagickExport Image *MorphImages(const Image *image,const size_t number_frames, (morph_traits == UndefinedPixelTrait)) continue; if (((morph_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(morph_image,channel,p[i],q); continue; @@ -4449,7 +4449,7 @@ MagickExport Image *SketchImage(const Image *image,const double radius, register ssize_t i; - if (GetPixelMask(random_image,q) == 0) + if (GetPixelReadMask(random_image,q) == 0) { q+=GetPixelChannels(random_image); continue; @@ -4613,7 +4613,7 @@ MagickExport MagickBooleanType SolarizeImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -5099,7 +5099,7 @@ MagickExport Image *SwirlImage(const Image *image,double degrees, /* Determine if the pixel is within an ellipse. */ - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(swirl_image); @@ -5337,7 +5337,7 @@ MagickExport Image *TintImage(const Image *image,const char *blend, (tint_traits == UndefinedPixelTrait)) continue; if (((tint_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(tint_image,channel,p[i],q); continue; diff --git a/MagickCore/image.c b/MagickCore/image.c index 915a6a8c4..71e4a9bc9 100644 --- a/MagickCore/image.c +++ b/MagickCore/image.c @@ -577,7 +577,7 @@ MagickExport Image *AppendImages(const Image *images, GetPixelInfo(image,&pixel); for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(append_image); @@ -821,7 +821,8 @@ MagickExport Image *CloneImage(const Image *image,const size_t columns, clone_image->number_meta_channels=image->number_meta_channels; clone_image->metacontent_extent=image->metacontent_extent; clone_image->colorspace=image->colorspace; - clone_image->mask=image->mask; + clone_image->read_mask=image->read_mask; + clone_image->write_mask=image->write_mask; clone_image->alpha_trait=image->alpha_trait; clone_image->columns=image->columns; clone_image->rows=image->rows; @@ -1320,7 +1321,7 @@ MagickExport Image *GetImageMask(const Image *image,ExceptionInfo *exception) return((Image *) NULL); status=MagickTrue; (void) SetImageColorspace(mask_image,GRAYColorspace,exception); - mask_image->mask=MagickFalse; + mask_image->read_mask=MagickFalse; image_view=AcquireVirtualCacheView(image,exception); mask_view=AcquireAuthenticCacheView(mask_image,exception); for (y=0; y < (ssize_t) image->rows; y++) @@ -1346,7 +1347,7 @@ MagickExport Image *GetImageMask(const Image *image,ExceptionInfo *exception) } for (x=0; x < (ssize_t) image->columns; x++) { - SetPixelGray(mask_image,GetPixelMask(image,p),q); + SetPixelGray(mask_image,GetPixelReadMask(image,p),q); p+=GetPixelChannels(image); q+=GetPixelChannels(mask_image); } @@ -1686,7 +1687,7 @@ MagickExport MagickBooleanType IsHighDynamicRangeImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -3059,10 +3060,10 @@ MagickExport MagickBooleanType SetImageMask(Image *image,const Image *mask, assert(image->signature == MagickSignature); if (mask == (const Image *) NULL) { - image->mask=MagickFalse; + image->read_mask=MagickFalse; return(SyncImagePixelCache(image,exception)); } - image->mask=MagickTrue; + image->read_mask=MagickTrue; if (SyncImagePixelCache(image,exception) == MagickFalse) return(MagickFalse); status=MagickTrue; @@ -3094,7 +3095,7 @@ MagickExport MagickBooleanType SetImageMask(Image *image,const Image *mask, } for (x=0; x < (ssize_t) image->columns; x++) { - SetPixelMask(image,ClampToQuantum(GetPixelIntensity(mask,p)),q); + SetPixelReadMask(image,ClampToQuantum(GetPixelIntensity(mask,p)),q); p+=GetPixelChannels(mask); q+=GetPixelChannels(image); } diff --git a/MagickCore/image.h b/MagickCore/image.h index ebd0f67b8..c8ca0040c 100644 --- a/MagickCore/image.h +++ b/MagickCore/image.h @@ -270,7 +270,8 @@ struct _Image ping; /* no image data read, just attributes */ MagickBooleanType - mask; + read_mask, + write_mask; PixelTrait alpha_trait; /* is transparency channel defined and active */ diff --git a/MagickCore/morphology.c b/MagickCore/morphology.c index b91a23bf6..5487a7882 100644 --- a/MagickCore/morphology.c +++ b/MagickCore/morphology.c @@ -2696,7 +2696,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, (morphology_traits == UndefinedPixelTrait)) continue; if (((morphology_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) { SetPixelChannel(morphology_image,channel,p[center+i],q); continue; @@ -2842,7 +2842,7 @@ static ssize_t MorphologyPrimitive(const Image *image,Image *morphology_image, (morphology_traits == UndefinedPixelTrait)) continue; if (((morphology_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) { SetPixelChannel(morphology_image,channel,p[center+i],q); continue; @@ -3296,7 +3296,7 @@ static ssize_t MorphologyPrimitiveDirect(Image *image, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) continue; pixels=p; pixel=(double) QuantumRange; @@ -3459,7 +3459,7 @@ static ssize_t MorphologyPrimitiveDirect(Image *image, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p+center) == 0)) + (GetPixelReadMask(image,p+center) == 0)) continue; pixels=p; pixel=(double) QuantumRange; diff --git a/MagickCore/option.c b/MagickCore/option.c index defde3132..fef29344a 100644 --- a/MagickCore/option.c +++ b/MagickCore/option.c @@ -1428,10 +1428,11 @@ static const OptionInfo { "K", BlackPixelChannel, UndefinedOptionFlag, MagickFalse }, { "M", MagentaPixelChannel, UndefinedOptionFlag, MagickFalse }, { "Magenta", MagentaPixelChannel, UndefinedOptionFlag, MagickFalse }, - { "Mask", MaskPixelChannel, UndefinedOptionFlag, MagickFalse }, { "R", RedPixelChannel, UndefinedOptionFlag, MagickFalse }, + { "ReadMask", ReadMaskPixelChannel, UndefinedOptionFlag, MagickFalse }, { "Red", RedPixelChannel, UndefinedOptionFlag, MagickFalse }, { "Sync", SyncPixelChannel, UndefinedOptionFlag, MagickFalse }, + { "WriteMask", WriteMaskPixelChannel, UndefinedOptionFlag, MagickFalse }, { "Y", YellowPixelChannel, UndefinedOptionFlag, MagickFalse }, { "Yellow", YellowPixelChannel, UndefinedOptionFlag, MagickFalse }, { (char *) NULL, UndefinedPixelChannel, UndefinedOptionFlag, MagickFalse } diff --git a/MagickCore/paint.c b/MagickCore/paint.c index 9259a99f8..e9d1df8fe 100644 --- a/MagickCore/paint.c +++ b/MagickCore/paint.c @@ -676,7 +676,7 @@ MagickExport Image *OilPaintImage(const Image *image,const double radius, (paint_traits == UndefinedPixelTrait)) continue; if (((paint_traits & CopyPixelTrait) != 0) || - (GetPixelMask(linear_image,p) == 0)) + (GetPixelReadMask(linear_image,p) == 0)) { SetPixelChannel(paint_image,channel,p[center+i],q); continue; diff --git a/MagickCore/pixel-accessor.h b/MagickCore/pixel-accessor.h index d11ea4507..4d6724cc6 100644 --- a/MagickCore/pixel-accessor.h +++ b/MagickCore/pixel-accessor.h @@ -283,17 +283,25 @@ static inline PixelTrait GetPixelMagentaTraits(const Image *restrict image) return(image->channel_map[MagentaPixelChannel].traits); } -static inline Quantum GetPixelMask(const Image *restrict image, +static inline Quantum GetPixelReadMask(const Image *restrict image, const Quantum *restrict pixel) { - if (image->channel_map[MaskPixelChannel].traits == UndefinedPixelTrait) + if (image->channel_map[ReadMaskPixelChannel].traits == UndefinedPixelTrait) return((Quantum) QuantumRange); - return(pixel[image->channel_map[MaskPixelChannel].offset]); + return(pixel[image->channel_map[ReadMaskPixelChannel].offset]); } -static inline PixelTrait GetPixelMaskTraits(const Image *restrict image) +static inline Quantum GetPixelWriteMask(const Image *restrict image, + const Quantum *restrict pixel) +{ + if (image->channel_map[WriteMaskPixelChannel].traits == UndefinedPixelTrait) + return((Quantum) QuantumRange); + return(pixel[image->channel_map[WriteMaskPixelChannel].offset]); +} + +static inline PixelTrait GetPixelReadMaskTraits(const Image *restrict image) { - return(image->channel_map[MaskPixelChannel].traits); + return(image->channel_map[ReadMaskPixelChannel].traits); } static inline size_t GetPixelMetaChannels(const Image *restrict image) @@ -674,11 +682,18 @@ static inline void SetPixelMagentaTraits(Image *image,const PixelTrait traits) image->channel_map[MagentaPixelChannel].traits=traits; } -static inline void SetPixelMask(const Image *restrict image, +static inline void SetPixelReadMask(const Image *restrict image, + const Quantum mask,Quantum *restrict pixel) +{ + if (image->channel_map[ReadMaskPixelChannel].traits != UndefinedPixelTrait) + pixel[image->channel_map[ReadMaskPixelChannel].offset]=mask; +} + +static inline void SetPixelWriteMask(const Image *restrict image, const Quantum mask,Quantum *restrict pixel) { - if (image->channel_map[MaskPixelChannel].traits != UndefinedPixelTrait) - pixel[image->channel_map[MaskPixelChannel].offset]=mask; + if (image->channel_map[WriteMaskPixelChannel].traits != UndefinedPixelTrait) + pixel[image->channel_map[WriteMaskPixelChannel].offset]=mask; } static inline void SetPixelMetacontentExtent(Image *image,const size_t extent) diff --git a/MagickCore/pixel.c b/MagickCore/pixel.c index 5f3917855..3d9ce6341 100644 --- a/MagickCore/pixel.c +++ b/MagickCore/pixel.c @@ -130,7 +130,7 @@ name="alpha"; \ break; \ } \ - case MaskPixelChannel: \ + case ReadMaskPixelChannel: \ { \ name="mask"; \ break; \ @@ -4116,8 +4116,10 @@ MagickExport void InitializePixelChannelMap(Image *image) SetPixelChannelAttributes(image,AlphaPixelChannel,CopyPixelTrait,n++); if (image->storage_class == PseudoClass) SetPixelChannelAttributes(image,IndexPixelChannel,CopyPixelTrait,n++); - if (image->mask != MagickFalse) - SetPixelChannelAttributes(image,MaskPixelChannel,CopyPixelTrait,n++); + if (image->read_mask != MagickFalse) + SetPixelChannelAttributes(image,ReadMaskPixelChannel,CopyPixelTrait,n++); + if (image->write_mask != MagickFalse) + SetPixelChannelAttributes(image,WriteMaskPixelChannel,CopyPixelTrait,n++); assert((n+image->number_meta_channels) < MaxPixelChannels); for (i=0; i < (ssize_t) image->number_meta_channels; i++) SetPixelChannelAttributes(image,(PixelChannel) (MetaPixelChannel+i), @@ -6068,8 +6070,10 @@ MagickExport void SetPixelChannelMask(Image *image, } if (image->storage_class == PseudoClass) SetPixelChannelTraits(image,IndexPixelChannel,CopyPixelTrait); - if (image->mask != MagickFalse) - SetPixelChannelTraits(image,MaskPixelChannel,CopyPixelTrait); + if (image->read_mask != MagickFalse) + SetPixelChannelTraits(image,ReadMaskPixelChannel,CopyPixelTrait); + if (image->write_mask != MagickFalse) + SetPixelChannelTraits(image,WriteMaskPixelChannel,CopyPixelTrait); if (image->debug != MagickFalse) LogPixelChannels(image); } diff --git a/MagickCore/pixel.h b/MagickCore/pixel.h index 851501c8a..b935f4d44 100644 --- a/MagickCore/pixel.h +++ b/MagickCore/pixel.h @@ -44,8 +44,9 @@ typedef enum AlphaChannel = 0x0010, OpacityChannel = 0x0010, IndexChannel = 0x0020, - MaskChannel = 0x0040, - MetaChannel = 0x0080, + ReadMaskChannel = 0x0040, + WriteMaskChannel = 0x0080, + MetaChannel = 0x0100, CompositeChannels = 0x002F, AllChannels = 0x7ffffff, /* @@ -80,9 +81,10 @@ typedef enum BlackPixelChannel = 3, AlphaPixelChannel = 4, IndexPixelChannel = 5, - MaskPixelChannel = 6, /* Image Write Mask */ - MetaPixelChannel = 7, /* ??? */ - IntensityPixelChannel = MaxPixelChannels, /* what are these ??? */ + ReadMaskPixelChannel = 6, + WriteMaskPixelChannel = 7, + MetaPixelChannel = 8, + IntensityPixelChannel = MaxPixelChannels, CompositePixelChannel = MaxPixelChannels, SyncPixelChannel = MaxPixelChannels+1 } PixelChannel; /* must correspond to ChannelType */ diff --git a/MagickCore/quantum-export.c b/MagickCore/quantum-export.c index 839e898de..8bd8c76a9 100644 --- a/MagickCore/quantum-export.c +++ b/MagickCore/quantum-export.c @@ -3237,7 +3237,7 @@ MagickExport size_t ExportQuantumPixels(const Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/quantum-import.c b/MagickCore/quantum-import.c index 406a7d706..cf20086f5 100644 --- a/MagickCore/quantum-import.c +++ b/MagickCore/quantum-import.c @@ -3604,7 +3604,7 @@ MagickExport size_t ImportQuantumPixels(const Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/resize.c b/MagickCore/resize.c index f618e93d4..4cbfbf6e8 100644 --- a/MagickCore/resize.c +++ b/MagickCore/resize.c @@ -1652,7 +1652,7 @@ MagickExport Image *InterpolativeResizeImage(const Image *image, register ssize_t i; - if (GetPixelMask(resize_image,q) == 0) + if (GetPixelReadMask(resize_image,q) == 0) { q+=GetPixelChannels(resize_image); continue; @@ -2328,7 +2328,7 @@ static MagickBooleanType HorizontalFilter(const ResizeFilter *resize_filter, (resize_traits == UndefinedPixelTrait)) continue; if (((resize_traits & CopyPixelTrait) != 0) || - (GetPixelMask(resize_image,q) == 0)) + (GetPixelReadMask(resize_image,q) == 0)) { j=(ssize_t) (MagickMin(MagickMax(bisect,(double) start),(double) stop-1.0)+0.5); @@ -2543,7 +2543,7 @@ static MagickBooleanType VerticalFilter(const ResizeFilter *resize_filter, (resize_traits == UndefinedPixelTrait)) continue; if (((resize_traits & CopyPixelTrait) != 0) || - (GetPixelMask(resize_image,q) == 0)) + (GetPixelReadMask(resize_image,q) == 0)) { j=(ssize_t) (MagickMin(MagickMax(bisect,(double) start),(double) stop-1.0)+0.5); @@ -2864,7 +2864,7 @@ MagickExport Image *SampleImage(const Image *image,const size_t columns, register ssize_t i; - if (GetPixelMask(sample_image,q) == 0) + if (GetPixelReadMask(sample_image,q) == 0) { q+=GetPixelChannels(sample_image); continue; @@ -3078,7 +3078,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -3125,7 +3125,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -3175,7 +3175,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, } for (x=0; x < (ssize_t) image->columns; x++) { - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -3228,7 +3228,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, */ for (x=0; x < (ssize_t) scale_image->columns; x++) { - if (GetPixelMask(scale_image,q) == 0) + if (GetPixelReadMask(scale_image,q) == 0) { q+=GetPixelChannels(scale_image); continue; @@ -3334,7 +3334,7 @@ MagickExport Image *ScaleImage(const Image *image,const size_t columns, */ for (x=0; x < (ssize_t) scale_image->columns; x++) { - if (GetPixelMask(scale_image,q) == 0) + if (GetPixelReadMask(scale_image,q) == 0) { q+=GetPixelChannels(scale_image); continue; diff --git a/MagickCore/shear.c b/MagickCore/shear.c index dc0b62a29..d22ee32e9 100644 --- a/MagickCore/shear.c +++ b/MagickCore/shear.c @@ -1093,7 +1093,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, register ssize_t i; - if (GetPixelMask(image,tile_pixels) == 0) + if (GetPixelReadMask(image,tile_pixels) == 0) { tile_pixels-=width*GetPixelChannels(image); q+=GetPixelChannels(rotate_image); @@ -1180,7 +1180,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, i; q-=GetPixelChannels(rotate_image); - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -1303,7 +1303,7 @@ MagickExport Image *IntegralRotateImage(const Image *image,size_t rotations, register ssize_t i; - if (GetPixelMask(image,tile_pixels) == 0) + if (GetPixelReadMask(image,tile_pixels) == 0) { tile_pixels+=width*GetPixelChannels(image); q+=GetPixelChannels(rotate_image); diff --git a/MagickCore/signature.c b/MagickCore/signature.c index 6ca54b5b8..9c828b72d 100644 --- a/MagickCore/signature.c +++ b/MagickCore/signature.c @@ -526,7 +526,7 @@ MagickExport MagickBooleanType SignatureImage(Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; diff --git a/MagickCore/statistic.c b/MagickCore/statistic.c index 81ae530ad..415f48328 100644 --- a/MagickCore/statistic.c +++ b/MagickCore/statistic.c @@ -650,7 +650,7 @@ MagickExport Image *EvaluateImages(const Image *images, register ssize_t i; - if (GetPixelMask(next,p) == 0) + if (GetPixelReadMask(next,p) == 0) { p+=GetPixelChannels(next); continue; @@ -708,7 +708,7 @@ MagickExport Image *EvaluateImages(const Image *images, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -823,7 +823,7 @@ MagickExport MagickBooleanType EvaluateImage(Image *image, if (traits == UndefinedPixelTrait) continue; if (((traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,q) == 0)) + (GetPixelReadMask(image,q) == 0)) continue; q[i]=ClampToQuantum(ApplyEvaluateOperator(random_info[id],q[i],op, value)); @@ -1036,7 +1036,7 @@ MagickExport MagickBooleanType FunctionImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1288,7 +1288,7 @@ MagickExport MagickBooleanType GetImageKurtosis(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -1413,7 +1413,7 @@ MagickExport MagickBooleanType GetImageRange(const Image *image,double *minima, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -1559,7 +1559,7 @@ MagickExport ChannelStatistics *GetImageStatistics(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -1825,7 +1825,7 @@ MagickExport Image *PolynomialImage(const Image *images, register ssize_t i; - if (GetPixelMask(next,p) == 0) + if (GetPixelReadMask(next,p) == 0) { p+=GetPixelChannels(next); continue; @@ -1859,7 +1859,7 @@ MagickExport Image *PolynomialImage(const Image *images, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -2485,7 +2485,7 @@ MagickExport Image *StatisticImage(const Image *image,const StatisticType type, (statistic_traits == UndefinedPixelTrait)) continue; if (((statistic_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(statistic_image,channel,p[center+i],q); continue; diff --git a/MagickCore/threshold.c b/MagickCore/threshold.c index fb821da53..d39ba2301 100644 --- a/MagickCore/threshold.c +++ b/MagickCore/threshold.c @@ -273,7 +273,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image, (threshold_traits == UndefinedPixelTrait)) continue; if (((threshold_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(threshold_image,channel,p[center+i],q); continue; @@ -308,7 +308,7 @@ MagickExport Image *AdaptiveThresholdImage(const Image *image, (threshold_traits == UndefinedPixelTrait)) continue; if (((threshold_traits & CopyPixelTrait) != 0) || - (GetPixelMask(image,p) == 0)) + (GetPixelReadMask(image,p) == 0)) { SetPixelChannel(threshold_image,channel,p[center+i],q); continue; @@ -454,7 +454,7 @@ MagickExport MagickBooleanType BilevelImage(Image *image,const double threshold, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -619,7 +619,7 @@ MagickExport MagickBooleanType BlackThresholdImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -768,7 +768,7 @@ MagickExport MagickBooleanType ClampImage(Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1397,7 +1397,7 @@ MagickExport MagickBooleanType OrderedPosterizeImage(Image *image, n; n=0; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1561,7 +1561,7 @@ MagickExport MagickBooleanType PerceptibleImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1725,7 +1725,7 @@ MagickExport MagickBooleanType RandomThresholdImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; @@ -1899,7 +1899,7 @@ MagickExport MagickBooleanType WhiteThresholdImage(Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { q+=GetPixelChannels(image); continue; diff --git a/MagickCore/transform.c b/MagickCore/transform.c index bc95c641f..ba0e8295f 100644 --- a/MagickCore/transform.c +++ b/MagickCore/transform.c @@ -696,7 +696,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(crop_image); @@ -1051,7 +1051,7 @@ MagickExport Image *ExcerptImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(excerpt_image); @@ -1251,7 +1251,7 @@ MagickExport Image *FlipImage(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(flip_image); @@ -1393,7 +1393,7 @@ MagickExport Image *FlopImage(const Image *image,ExceptionInfo *exception) i; q-=GetPixelChannels(flop_image); - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; @@ -1519,7 +1519,7 @@ static inline MagickBooleanType CopyImageRegion(Image *destination, register ssize_t i; - if (GetPixelMask(source,p) == 0) + if (GetPixelReadMask(source,p) == 0) { p+=GetPixelChannels(source); q+=GetPixelChannels(destination); @@ -1837,7 +1837,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(splice_image); @@ -1863,7 +1863,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(splice_image); @@ -1932,7 +1932,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(splice_image); @@ -1958,7 +1958,7 @@ MagickExport Image *SpliceImage(const Image *image, register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(splice_image); @@ -2267,7 +2267,7 @@ MagickExport Image *TransposeImage(const Image *image,ExceptionInfo *exception) register ssize_t i; - if (GetPixelMask(image,q) == 0) + if (GetPixelReadMask(image,q) == 0) { p+=GetPixelChannels(image); q+=GetPixelChannels(transpose_image); @@ -2415,7 +2415,7 @@ MagickExport Image *TransverseImage(const Image *image,ExceptionInfo *exception) i; q-=GetPixelChannels(transverse_image); - if (GetPixelMask(image,p) == 0) + if (GetPixelReadMask(image,p) == 0) { p+=GetPixelChannels(image); continue; diff --git a/PerlMagick/quantum/quantum.xs.in b/PerlMagick/quantum/quantum.xs.in index cd40c8571..bf2486863 100644 --- a/PerlMagick/quantum/quantum.xs.in +++ b/PerlMagick/quantum/quantum.xs.in @@ -4589,7 +4589,7 @@ Get(ref,...) *sv; sv=NULL; - if (image->mask == MagickFalse) + if (image->read_mask == MagickFalse) ClipImage(image,exception); mask_image=GetImageMask(image,exception); if (mask_image != (Image *) NULL) @@ -4612,7 +4612,7 @@ Get(ref,...) *sv; sv=NULL; - if (image->mask != MagickFalse) + if (image->read_mask != MagickFalse) ClipImage(image,exception); mask_image=GetImageMask(image,exception); if (mask_image != (Image *) NULL) diff --git a/coders/clip.c b/coders/clip.c index 918878297..ca65ad7bd 100644 --- a/coders/clip.c +++ b/coders/clip.c @@ -223,9 +223,9 @@ static MagickBooleanType WriteCLIPImage(const ImageInfo *image_info, MagickBooleanType status; - if (image->mask == MagickFalse) + if (image->read_mask == MagickFalse) (void) ClipImage(image,exception); - if (image->mask == MagickFalse) + if (image->read_mask == MagickFalse) ThrowWriterException(CoderError,"ImageDoesNotHaveAClipMask"); clip_image=GetImageMask(image,exception); if (clip_image == (Image *) NULL) diff --git a/coders/mask.c b/coders/mask.c index 6fcb2e3b8..9153dc54f 100644 --- a/coders/mask.c +++ b/coders/mask.c @@ -270,7 +270,7 @@ static Image *MaskImage(const Image *image,ExceptionInfo *exception) for (x=0; x < (ssize_t) image->columns; x++) { SetPixelChannel(mask_image,GrayPixelChannel,0,q); - SetPixelChannel(mask_image,GrayPixelChannel,GetPixelMask(image,p),q); + SetPixelChannel(mask_image,GrayPixelChannel,GetPixelReadMask(image,p),q); p+=GetPixelChannels(image); q+=GetPixelChannels(mask_image); } diff --git a/coders/ps3.c b/coders/ps3.c index c3556de67..30be999c3 100644 --- a/coders/ps3.c +++ b/coders/ps3.c @@ -1129,7 +1129,7 @@ static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image, /* PS clipping path from Photoshop clipping path. */ - if ((image->mask != MagickFalse) || + if ((image->read_mask != MagickFalse) || (LocaleNCompare("8BIM:",image->magick_filename,5) != 0)) (void) WriteBlobString(image,"/ClipImage {} def\n"); else @@ -1205,7 +1205,7 @@ static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image, /* Photoshop clipping path active? */ - if ((image->mask != MagickFalse) && + if ((image->read_mask != MagickFalse) && (LocaleNCompare("8BIM:",image->magick_filename,5) == 0)) (void) WriteBlobString(image,"true\n"); else