From a6c76a088c9070bdc315eb49ac2d0602d430ba2f Mon Sep 17 00:00:00 2001 From: Cristy Date: Sun, 27 Nov 2016 10:29:46 -0500 Subject: [PATCH] ... --- MagickCore/paint.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/MagickCore/paint.c b/MagickCore/paint.c index 1a1125a37..3b972d0ce 100644 --- a/MagickCore/paint.c +++ b/MagickCore/paint.c @@ -971,6 +971,11 @@ MagickExport MagickBooleanType OpaquePaintImage(Image *image, pixel=zero; for (x=0; x < (ssize_t) image->columns; x++) { + if (GetPixelReadMask(image,q) == 0) + { + q+=GetPixelChannels(image); + continue; + } GetPixelInfoPixel(image,q,&pixel); if (IsFuzzyEquivalencePixelInfo(&pixel,&conform_target) != invert) SetPixelViaPixelInfo(image,&conform_fill,q); @@ -1098,6 +1103,11 @@ MagickExport MagickBooleanType TransparentPaintImage(Image *image, pixel=zero; for (x=0; x < (ssize_t) image->columns; x++) { + if (GetPixelReadMask(image,q) == 0) + { + q+=GetPixelChannels(image); + continue; + } GetPixelInfoPixel(image,q,&pixel); if (IsFuzzyEquivalencePixelInfo(&pixel,target) != invert) SetPixelAlpha(image,opacity,q); @@ -1228,6 +1238,11 @@ MagickExport MagickBooleanType TransparentPaintImageChroma(Image *image, GetPixelInfo(image,&pixel); for (x=0; x < (ssize_t) image->columns; x++) { + if (GetPixelReadMask(image,q) == 0) + { + q+=GetPixelChannels(image); + continue; + } GetPixelInfoPixel(image,q,&pixel); match=((pixel.red >= low->red) && (pixel.red <= high->red) && (pixel.green >= low->green) && (pixel.green <= high->green) && -- 2.49.0