]> granicus.if.org Git - imagemagick/commitdiff
...
authorCristy <urban-warrior@imagemagick.org>
Thu, 21 Sep 2017 23:54:20 +0000 (19:54 -0400)
committerCristy <urban-warrior@imagemagick.org>
Thu, 21 Sep 2017 23:54:20 +0000 (19:54 -0400)
MagickCore/pixel-accessor.h

index c0b6d5fa05963eca573539f7bdb57480fe14e8e2..aa21d96e92d77a8a9431c1100156d01665c780c2 100644 (file)
@@ -468,6 +468,8 @@ static inline MagickBooleanType IsPixelEquivalent(
   value=(MagickRealType) p[image->channel_map[AlphaPixelChannel].offset];
   alpha=image->alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : value;
   beta=q->alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : q->alpha;
+  if (AbsolutePixelValue(alpha-beta) >= MagickEpsilon)
+    return(MagickFalse);
   if ((alpha == TransparentOpacity) || (beta == TransparentOpacity))
     return(MagickTrue);  /* no color component if pixel is transparent */
   value=(MagickRealType) p[image->channel_map[RedPixelChannel].offset];
@@ -485,8 +487,6 @@ static inline MagickBooleanType IsPixelEquivalent(
       if (AbsolutePixelValue(value-q->black) >= MagickEpsilon)
         return(MagickFalse);
     }
-  if (AbsolutePixelValue(alpha-beta) >= MagickEpsilon)
-    return(MagickFalse);
   return(MagickTrue);
 }
 
@@ -517,6 +517,8 @@ static inline MagickBooleanType IsPixelInfoEquivalent(
 
   alpha=p->alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : p->alpha;
   beta=q->alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : q->alpha;
+  if (AbsolutePixelValue(alpha-beta) >= MagickEpsilon)
+    return(MagickFalse);
   if ((alpha == TransparentOpacity) || (beta == TransparentOpacity))
     return(MagickTrue);  /* no color component if pixel is transparent */
   if (AbsolutePixelValue(p->red-q->red) >= MagickEpsilon)
@@ -530,8 +532,6 @@ static inline MagickBooleanType IsPixelInfoEquivalent(
       if (AbsolutePixelValue(p->black-q->black) >= MagickEpsilon)
         return(MagickFalse);
     }
-  if (AbsolutePixelValue(alpha-beta) >= MagickEpsilon)
-    return(MagickFalse);
   return(MagickTrue);
 }