diff --git a/MagickCore/paint.c b/MagickCore/paint.c
index ca64b58..ac33f92 100644
--- a/MagickCore/paint.c
+++ b/MagickCore/paint.c
@@ -655,6 +655,12 @@
}
k+=(ssize_t) (image->columns+width);
}
+ if (GetPixelMask(image,p) != 0)
+ {
+ p+=GetPixelChannels(image);
+ q+=GetPixelChannels(paint_image);
+ continue;
+ }
for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
{
PixelChannel
@@ -670,8 +676,7 @@
if ((traits == UndefinedPixelTrait) ||
(paint_traits == UndefinedPixelTrait))
continue;
- if (((paint_traits & CopyPixelTrait) != 0) ||
- (GetPixelMask(image,p) != 0))
+ if ((paint_traits & CopyPixelTrait) != 0)
{
SetPixelChannel(paint_image,channel,p[center+i],q);
continue;