diff --git a/MagickCore/composite.c b/MagickCore/composite.c
index 3a8d0b8..145cfbd 100644
--- a/MagickCore/composite.c
+++ b/MagickCore/composite.c
@@ -1721,14 +1721,9 @@
           }
           case ColorDodgeCompositeOp:
           {
-            if ((fabs(Sca-Sa) < MagickEpsilon) && (fabs(Dca) < MagickEpsilon))
+            if ((Sca*Da+Dca*Sa) >= Sa*Da)
               {
-                pixel=QuantumRange*gamma*(Sca*(1.0-Da)+Dca*(1.0-Sa));
-                break;
-              }
-            if (fabs(Sca-Sa) < MagickEpsilon)
-              {
-                pixel=QuantumRange*gamma*(Sa*Da+Sca*(1.0-Da)+Dca*(1.0-Sa));
+                pixel=QuantumRange*gamma*(Sa*Da+Sca*(1.0-Da)+Dca*(1.0-Sa))
                 break;
               }
             pixel=QuantumRange*gamma*(Dca*Sa*Sa/(Sa-Sca)+Sca*(1.0-Da)+Dca*