+++ /dev/null
-From 1ddcf2e4f28029a888cadef2e757509ef5047ad8 Mon Sep 17 00:00:00 2001
-From: Cristy <urban-warrior@imagemagick.org>
-Date: Mon, 8 Jul 2019 06:14:34 -0400
-Subject: [PATCH] https://github.com/ImageMagick/ImageMagick/issues/1629
-
-Downloaded from upstream commit
-https://github.com/ImageMagick/ImageMagick/commit/1ddcf2e4f28029a888cadef2e757509ef5047ad8
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- MagickCore/layer.c | 56 ++++++++++++++++++++++++----------------------
- 1 file changed, 29 insertions(+), 27 deletions(-)
-
-diff --git a/MagickCore/layer.c b/MagickCore/layer.c
-index b520e9247d..48632885ae 100644
---- a/MagickCore/layer.c
-+++ b/MagickCore/layer.c
-@@ -1584,45 +1584,47 @@ MagickExport void OptimizeImageTransparency(const Image *image,
- % o exception: return any errors or warnings in this structure.
- %
- */
--MagickExport void RemoveDuplicateLayers(Image **images,
-- ExceptionInfo *exception)
-+MagickExport void RemoveDuplicateLayers(Image **images,ExceptionInfo *exception)
- {
-- register Image
-- *curr,
-- *next;
--
- RectangleInfo
- bounds;
-
-+ register Image
-+ *image,
-+ *next;
-+
- assert((*images) != (const Image *) NULL);
- assert((*images)->signature == MagickCoreSignature);
- if ((*images)->debug != MagickFalse)
-- (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",(*images)->filename);
-+ (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",
-+ (*images)->filename);
- assert(exception != (ExceptionInfo *) NULL);
- assert(exception->signature == MagickCoreSignature);
--
-- curr=GetFirstImageInList(*images);
-- for (; (next=GetNextImageInList(curr)) != (Image *) NULL; curr=next)
-+ image=GetFirstImageInList(*images);
-+ for ( ; (next=GetNextImageInList(image)) != (Image *) NULL; image=next)
- {
-- if ( curr->columns != next->columns || curr->rows != next->rows
-- || curr->page.x != next->page.x || curr->page.y != next->page.y )
-+ if ((image->columns != next->columns) || (image->rows != next->rows) ||
-+ (image->page.x != next->page.x) || (image->page.y != next->page.y))
- continue;
-- bounds=CompareImagesBounds(curr,next,CompareAnyLayer,exception);
-- if ( bounds.x < 0 ) {
-- /*
-- the two images are the same, merge time delays and delete one.
-- */
-- size_t time;
-- time = curr->delay*1000/curr->ticks_per_second;
-- time += next->delay*1000/next->ticks_per_second;
-- next->ticks_per_second = 100L;
-- next->delay = time*curr->ticks_per_second/1000;
-- next->iterations = curr->iterations;
-- *images = curr;
-- (void) DeleteImageFromList(images);
-- }
-+ bounds=CompareImagesBounds(image,next,CompareAnyLayer,exception);
-+ if (bounds.x < 0)
-+ {
-+ /*
-+ Two images are the same, merge time delays and delete one.
-+ */
-+ size_t
-+ time;
-+
-+ time=1000*image->delay*PerceptibleReciprocal(image->ticks_per_second);
-+ time+=1000*next->delay*PerceptibleReciprocal(next->ticks_per_second);
-+ next->ticks_per_second=100L;
-+ next->delay=time*image->ticks_per_second/1000;
-+ next->iterations=image->iterations;
-+ *images=image;
-+ (void) DeleteImageFromList(images);
-+ }
- }
-- *images = GetFirstImageInList(*images);
-+ *images=GetFirstImageInList(*images);
- }
- \f
- /*