]> granicus.if.org Git - imagemagick/blobdiff - MagickCore/quantum-import.c
(no commit message)
[imagemagick] / MagickCore / quantum-import.c
index 39a592399d7d5d5519287415b0ec6810121956ec..65efe5437a15e4a7340eceac19d9459d83237214 100644 (file)
@@ -3603,6 +3603,11 @@ MagickExport size_t ImportQuantumPixels(const Image *image,
         register ssize_t
           i;
 
+        if (GetPixelMask(image,q) != 0)
+          {
+            q+=GetPixelChannels(image);
+            continue;
+          }
         Sa=QuantumScale*GetPixelAlpha(image,q);
         gamma=1.0/(fabs(Sa) <= MagickEpsilon ? 1.0 : Sa);
         for (i=0; i < (ssize_t) GetPixelChannels(image); i++)
@@ -3615,8 +3620,9 @@ MagickExport size_t ImportQuantumPixels(const Image *image,
 
           channel=GetPixelChannelMapChannel(image,i);
           traits=GetPixelChannelMapTraits(image,channel);
-          if ((traits & UpdatePixelTrait) != 0)
-            q[i]=ClampToQuantum(gamma*q[i]);
+          if ((traits & UpdatePixelTrait) == 0)
+            continue;
+          q[i]=ClampToQuantum(gamma*q[i]);
         }
         q+=GetPixelChannels(image);
       }