From: cristy Date: Thu, 10 Sep 2009 23:43:34 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~10736 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c2e1bdda43cf6e1fd4846868debc4c3d0ee69225;p=imagemagick --- diff --git a/magick/cache.c b/magick/cache.c index 0a0a0b364..274e50602 100644 --- a/magick/cache.c +++ b/magick/cache.c @@ -1468,12 +1468,6 @@ MagickExport Cache DestroyPixelCache(Cache cache) CacheInfo *cache_info; - CacheType - type; - - MapMode - mode; - assert(cache != (Cache) NULL); cache_info=(CacheInfo *) cache; assert(cache_info->signature == MagickSignature); @@ -1490,11 +1484,14 @@ MagickExport Cache DestroyPixelCache(Cache cache) (void) UnlockSemaphoreInfo(cache_info->semaphore); if (cache_resources != (SplayTreeInfo *) NULL) (void) DeleteNodeByValueFromSplayTree(cache_resources,cache_info); - type=cache_info->type; - mode=cache_info->mode; - RelinquishPixelCachePixels(cache_info); - if ((mode != ReadMode) && ((type == MapCache) || (type == DiskCache))) - (void) RelinquishUniqueFileResource(cache_info->cache_filename); + if ((cache_info->mode == ReadMode) || ((cache_info->type != MapCache) && + (cache_info->type != DiskCache))) + RelinquishPixelCachePixels(cache_info); + else + { + RelinquishPixelCachePixels(cache_info); + (void) RelinquishUniqueFileResource(cache_info->cache_filename); + } *cache_info->cache_filename='\0'; if (cache_info->nexus_info != (NexusInfo **) NULL) cache_info->nexus_info=DestroyPixelCacheNexus(cache_info->nexus_info,