Fixed semaphore bug in RegisterMagickInfo.
diff --git a/MagickCore/magick.c b/MagickCore/magick.c
index 70a90aa..c260c7f 100644
--- a/MagickCore/magick.c
+++ b/MagickCore/magick.c
@@ -1445,7 +1445,8 @@
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",magick_info->name);
if (magick_list == (SplayTreeInfo *) NULL)
return((MagickInfo *) NULL);
- if (magick_info->thread_support == NoThreadSupport)
+ if (((magick_info->thread_support & DecoderThreadSupport) == 0) ||
+ ((magick_info->thread_support & EncoderThreadSupport) == 0))
magick_info->semaphore=AcquireSemaphoreInfo();
status=AddValueToSplayTree(magick_list,magick_info->name,magick_info);
if (status == MagickFalse)