From cca82cc6fa6a52f75b1b9bee5dd8b0036c667f15 Mon Sep 17 00:00:00 2001 From: dirk Date: Thu, 6 Mar 2014 22:47:10 +0000 Subject: [PATCH] Fixed deadlock on Windows when OpenMP is not enabled. --- MagickCore/semaphore-private.h | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/MagickCore/semaphore-private.h b/MagickCore/semaphore-private.h index 82bbdd64b..182cfc819 100644 --- a/MagickCore/semaphore-private.h +++ b/MagickCore/semaphore-private.h @@ -47,31 +47,19 @@ static MagickBooleanType static inline void DestroyMagickMutex(void) { - if (active_mutex != MagickFalse) - { #if defined(MAGICKCORE_OPENMP_SUPPORT) - omp_destroy_lock(&semaphore_mutex); -#elif defined(MAGICKCORE_THREAD_SUPPORT) - ; -#elif defined(MAGICKCORE_HAVE_WINTHREADS) - DeleteCriticalSection(&semaphore_mutex); + if (active_mutex != MagickFalse) + omp_destroy_lock(&semaphore_mutex); #endif - } active_mutex=MagickFalse; } static inline void InitializeMagickMutex(void) { - if (active_mutex == MagickFalse) - { #if defined(MAGICKCORE_OPENMP_SUPPORT) - omp_init_lock(&semaphore_mutex); -#elif defined(MAGICKCORE_THREAD_SUPPORT) - ; -#elif defined(MAGICKCORE_HAVE_WINTHREADS) - InitializeCriticalSection(&semaphore_mutex); + if (active_mutex == MagickFalse) + omp_init_lock(&semaphore_mutex); #endif - } active_mutex=MagickTrue; } -- 2.50.1