]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Wed, 1 Feb 2012 02:09:32 +0000 (02:09 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Wed, 1 Feb 2012 02:09:32 +0000 (02:09 +0000)
MagickCore/enhance.c
MagickCore/fx.c

index 65bb0d6b71171b607f3d1e41163f3b6bbbd3920e..d163de0cd4a56ef3abc3b55dad2ef6a3c0b448cb 100644 (file)
@@ -3172,11 +3172,6 @@ MagickExport MagickBooleanType NegateImage(Image *image,
       register ssize_t
         i;
 
-      if (GetPixelMask(image,q) != 0)
-        {
-          q+=GetPixelChannels(image);
-          continue;
-        }
       for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
       {
         PixelChannel
@@ -3187,8 +3182,10 @@ MagickExport MagickBooleanType NegateImage(Image *image,
 
         channel=GetPixelChannelMapChannel(image,i);
         traits=GetPixelChannelMapTraits(image,channel);
-        if ((traits & UpdatePixelTrait) != 0)
-          q[i]=QuantumRange-q[i];
+        if (((traits & CopyPixelTrait) != 0) ||
+            (GetPixelMask(image,q) != 0))
+          continue;
+        q[i]=QuantumRange-q[i];
       }
       q+=GetPixelChannels(image);
     }
index d0989a6471b2520a456b5ea79e1ff6ca2a5bd095..860900813f8b7a8d8b464953ef3ca9275cb958c3 100644 (file)
@@ -335,12 +335,6 @@ MagickExport Image *AddNoiseImage(const Image *image,const NoiseType noise_type,
       register ssize_t
         i;
 
-      if (GetPixelMask(image,p) != 0)
-        {
-          p+=GetPixelChannels(image);
-          q+=GetPixelChannels(noise_image);
-          continue;
-        }
       for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
       {
         PixelChannel
@@ -356,7 +350,8 @@ MagickExport Image *AddNoiseImage(const Image *image,const NoiseType noise_type,
         if ((traits == UndefinedPixelTrait) ||
             (noise_traits == UndefinedPixelTrait))
           continue;
-        if ((noise_traits & CopyPixelTrait) != 0)
+        if (((noise_traits & CopyPixelTrait) != 0) ||
+            (GetPixelMask(image,p) != 0))
           {
             SetPixelChannel(noise_image,channel,p[i],q);
             continue;