]> granicus.if.org Git - imagemagick/commitdiff
Bug fix in threshold.c Introduced IM v6.6.5-6 for unknown reason
authoranthony <anthony@git.imagemagick.org>
Mon, 6 Dec 2010 06:10:48 +0000 (06:10 +0000)
committeranthony <anthony@git.imagemagick.org>
Mon, 6 Dec 2010 06:10:48 +0000 (06:10 +0000)
no action found in changelog

ChangeLog
magick/threshold.c

index 063a574e2b059c88eb7be2d5d5b7edf9359104aa..11ff846e54dc34fe6dc56a796a86b9e5bfea23d9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-12-06  6.6.6-4 Anthony Thyssen <A.Thyssen@griffith...>
+  * Ordered Dithered handling of Alpha channel was incorrect - fixing
+    Bug was introduced v6.6.5-6
+
 2010-12-03  6.6.6-3 Glenn Randers-Pehrson <glennrp@image...>
   * Fixed two more cases where the PNG encoder lost transparency (reference
     http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=17516).
index 2062b87b74c4b77cd09960ab2c6d40863f61690d..e4ca606e4e4e1f1d95c3629623f807d9ee98bd70 100644 (file)
@@ -1536,31 +1536,31 @@ printf("DEBUG levels  r=%u g=%u b=%u a=%u i=%u\n",
               Opacity is inverted so 'off' represents transparent.
         */
         if (levels.red) {
-          t = (ssize_t) (QuantumScale*q->red*(levels.red*d+1.0));
+          t = (ssize_t) (QuantumScale*q->red*(levels.red*d+1));
           l = t/d;  t = t-l*d;
           q->red=RoundToQuantum((MagickRealType) ((l+(t >= threshold))*
             (MagickRealType) QuantumRange/levels.red));
         }
         if (levels.green) {
-          t = (ssize_t) (QuantumScale*q->green*(levels.green*d+1.0));
+          t = (ssize_t) (QuantumScale*q->green*(levels.green*d+1));
           l = t/d;  t = t-l*d;
           q->green=RoundToQuantum((MagickRealType) ((l+(t >= threshold))*
             (MagickRealType) QuantumRange/levels.green));
         }
         if (levels.blue) {
-          t = (ssize_t) (QuantumScale*q->blue*(levels.blue*d+1.0));
+          t = (ssize_t) (QuantumScale*q->blue*(levels.blue*d+1));
           l = t/d;  t = t-l*d;
           q->blue=RoundToQuantum((MagickRealType) ((l+(t >= threshold))*
             (MagickRealType) QuantumRange/levels.blue));
         }
         if (levels.opacity) {
-          t = (ssize_t) ((1.0-QuantumScale*q->opacity)*(levels.opacity*d+.01));
+          t = (ssize_t) ((1.0-QuantumScale*q->opacity)*(levels.opacity*d+1));
           l = t/d;  t = t-l*d;
           q->opacity=RoundToQuantum((MagickRealType) ((1.0-l-(t >= threshold))*
             (MagickRealType) QuantumRange/levels.opacity));
         }
         if (levels.index) {
-          t = (ssize_t) (QuantumScale*indexes[x]*(levels.index*d+1.0));
+          t = (ssize_t) (QuantumScale*indexes[x]*(levels.index*d+1));
           l = t/d;  t = t-l*d;
           indexes[x]=(IndexPacket) RoundToQuantum((MagickRealType) ((l+
             (t>=threshold))*(MagickRealType) QuantumRange/levels.index));