From: Cristy Date: Thu, 27 Jun 2019 14:28:26 +0000 (-0400) Subject: Magick.NET unit tests no longer fails X-Git-Tag: 7.0.8-51~25 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9b16bb79211cfd943e0e182aadf08d8e9e64cb58;p=imagemagick Magick.NET unit tests no longer fails --- diff --git a/MagickCore/composite.c b/MagickCore/composite.c index 203e7ab9f..78e1ff222 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -611,6 +611,9 @@ MagickExport MagickBooleanType CompositeImage(Image *image, break; if ((y_offset+(ssize_t) source_image->rows) > (ssize_t) image->rows) break; + if ((source_image->alpha_trait == UndefinedPixelTrait) && + (image->alpha_trait != UndefinedPixelTrait)) + (void) SetImageAlphaChannel(source_image,OpaqueAlphaChannel,exception); status=MagickTrue; source_view=AcquireVirtualCacheView(source_image,exception); image_view=AcquireAuthenticCacheView(image,exception); @@ -660,13 +663,10 @@ MagickExport MagickBooleanType CompositeImage(Image *image, PixelTrait source_traits = GetPixelChannelTraits(source_image, channel); PixelTrait traits = GetPixelChannelTraits(image,channel); - if (traits == UndefinedPixelTrait) + if ((source_traits == UndefinedPixelTrait) || + (traits == UndefinedPixelTrait)) continue; - if (source_traits != UndefinedPixelTrait) - SetPixelChannel(image,channel,p[i],q); - else - if (channel == AlphaPixelChannel) - SetPixelChannel(image,channel,OpaqueAlpha,q); + SetPixelChannel(image,channel,p[i],q); } p+=GetPixelChannels(source_image); q+=GetPixelChannels(image);