]> granicus.if.org Git - imagemagick/commitdiff
Reset magick_list_initialized when needed
authorThomas Jost <schnouki@schnouki.net>
Tue, 3 Oct 2017 08:21:07 +0000 (10:21 +0200)
committerDirk Lemstra <dlemstra@users.noreply.github.com>
Tue, 3 Oct 2017 18:22:45 +0000 (20:22 +0200)
Failure to do so makes it impossible to re-init magick_list as it is already
marked as initialized even if it was destroyed.

Fixes #825.

MagickCore/magick.c

index e6a839dc015a034b45e9bd88bfad590e341ea688..0a6ae99f98cbae484875065a6193d622c80944b1 100644 (file)
@@ -1258,7 +1258,10 @@ MagickPrivate void MagickComponentTerminus(void)
     ActivateSemaphoreInfo(&magick_semaphore);
   LockSemaphoreInfo(magick_semaphore);
   if (magick_list != (SplayTreeInfo *) NULL)
-    magick_list=DestroySplayTree(magick_list);
+    {
+      magick_list=DestroySplayTree(magick_list);
+      magick_list_initialized=MagickFalse;
+    }
   UnlockSemaphoreInfo(magick_semaphore);
   RelinquishSemaphoreInfo(&magick_semaphore);
 }