From: cristy Date: Wed, 24 Sep 2014 00:21:44 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~1981 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cb2e679b5ac77fdfb839265830c39ddbb6254add;p=imagemagick --- diff --git a/MagickCore/blob.c b/MagickCore/blob.c index a9f623f67..abb367d9f 100644 --- a/MagickCore/blob.c +++ b/MagickCore/blob.c @@ -747,16 +747,21 @@ MagickPrivate void DisassociateBlob(Image *image) assert(image->blob != (BlobInfo *) NULL); assert(image->blob->signature == MagickSignature); clone=MagickFalse; + LockSemaphoreInfo(image->semaphore); LockSemaphoreInfo(image->blob->semaphore); assert(image->blob->reference_count >= 0); if (image->blob->reference_count > 1) clone=MagickTrue; UnlockSemaphoreInfo(image->blob->semaphore); if (clone == MagickFalse) - return; + { + UnlockSemaphoreInfo(image->semaphore); + return; + } blob=CloneBlobInfo(image->blob); DestroyBlob(image); image->blob=blob; + UnlockSemaphoreInfo(image->semaphore); } /*