diff --git a/MagickCore/effect.c b/MagickCore/effect.c
index c67c47f..623c38e 100644
--- a/MagickCore/effect.c
+++ b/MagickCore/effect.c
@@ -69,6 +69,7 @@
#include "MagickCore/morphology.h"
#include "MagickCore/paint.h"
#include "MagickCore/pixel-accessor.h"
+#include "MagickCore/pixel-private.h"
#include "MagickCore/property.h"
#include "MagickCore/quantize.h"
#include "MagickCore/quantum.h"
@@ -407,7 +408,7 @@
pixels+=GetPixelChannels(image);
}
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
continue;
}
@@ -425,7 +426,7 @@
pixels+=GetPixelChannels(image);
}
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
q+=GetPixelChannels(blur_image);
@@ -734,7 +735,7 @@
pixels+=GetPixelChannels(image);
}
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(sharp_image,channel,ClampToQuantum(gamma*pixel),q);
continue;
}
@@ -752,7 +753,7 @@
pixels+=GetPixelChannels(image);
}
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(sharp_image,channel,ClampToQuantum(gamma*pixel),q);
}
q+=GetPixelChannels(sharp_image);
@@ -1050,7 +1051,7 @@
k++;
pixels+=GetPixelChannels(image);
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
p+=GetPixelChannels(image);
@@ -1180,7 +1181,7 @@
k++;
pixels+=GetPixelChannels(blur_image);
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
p+=GetPixelChannels(blur_image);
@@ -2059,7 +2060,7 @@
gamma+=(*k)*alpha;
k++;
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
p+=GetPixelChannels(image);
@@ -2842,7 +2843,7 @@
pixel+=r[i];
gamma++;
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
continue;
}
@@ -2860,7 +2861,7 @@
pixel+=GetPixelAlpha(image,r)*r[i];
gamma+=GetPixelAlpha(image,r);
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
p+=GetPixelChannels(image);
@@ -3138,7 +3139,7 @@
SetPixelChannel(blur_image,channel,p[center+i],q);
continue;
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
continue;
}
@@ -3164,7 +3165,7 @@
SetPixelChannel(blur_image,channel,p[center+i],q);
continue;
}
- gamma=1.0/(fabs((double) gamma) < MagickEpsilon ? MagickEpsilon : gamma);
+ gamma=ClampReciprocal(gamma);
SetPixelChannel(blur_image,channel,ClampToQuantum(gamma*pixel),q);
}
p+=GetPixelChannels(image);