From b0c753681b67213741db6355930bf4a6881170df Mon Sep 17 00:00:00 2001 From: Cristy Date: Wed, 12 Aug 2015 07:42:13 -0400 Subject: [PATCH] http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=28186 --- MagickCore/composite.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/MagickCore/composite.c b/MagickCore/composite.c index a68cd8e22..3fe3295c6 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -2127,15 +2127,19 @@ MagickExport MagickBooleanType CompositeImage(Image *image, case ModulusAddCompositeOp: { pixel=Sc+Dc; - if (pixel > QuantumRange) + while (pixel > QuantumRange) pixel-=QuantumRange; + while (pixel < 0.0) + pixel+=QuantumRange; pixel=(Sa*Da*pixel+Sa*Sc*(1.0-Da)+Da*Dc*(1.0-Sa)); break; } case ModulusSubtractCompositeOp: { pixel=Sc-Dc; - if (pixel < 0.0) + while (pixel > QuantumRange) + pixel-=QuantumRange; + while (pixel < 0.0) pixel+=QuantumRange; pixel=(Sa*Da*pixel+Sa*Sc*(1.0-Da)+Da*Dc*(1.0-Sa)); break; -- 2.40.0