From: Cristy Date: Fri, 15 Jul 2016 13:34:12 +0000 (-0400) Subject: Initialize index channel to get expected results from the stegano coder X-Git-Tag: 7.0.2-5~16 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=82beb2072ba824d8182759b7f54f3ff95c8d39e9;p=imagemagick Initialize index channel to get expected results from the stegano coder --- diff --git a/ChangeLog b/ChangeLog index cd0e834b4..1268370d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,7 @@ https://github.com/ImageMagick/ImageMagick/issues/229). * Prevent possible buffer overflow when reading TIFF images (bug report from Shi Pu of MS509 Team). + * Initialize index channel to get expected results from the stegano coder. 2016-07-11 7.0.2-4 Cristy * Release ImageMagick version 7.0.2-4, GIT revision 18591:50debe5:20160710. diff --git a/coders/stegano.c b/coders/stegano.c index d154a7d58..36b4b95cb 100644 --- a/coders/stegano.c +++ b/coders/stegano.c @@ -159,6 +159,19 @@ static Image *ReadSTEGANOImage(const ImageInfo *image_info, status=SetImageExtent(image,image->columns,image->rows,exception); if (status == MagickFalse) return(DestroyImageList(image)); + for (y=0; y < (ssize_t) image->rows; y++) + { + q=QueueAuthenticPixels(image,0,y,image->columns,1,exception); + if (q == (Quantum *) NULL) + break; + for (x=0; x < (ssize_t) image->columns; x++) + { + SetPixelIndex(image,0,q); + q+=GetPixelChannels(image); + } + if (SyncAuthenticPixels(image,exception) == MagickFalse) + break; + } /* Get hidden watermark from low-order bits of image. */