]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Tue, 11 Dec 2012 17:27:01 +0000 (17:27 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Tue, 11 Dec 2012 17:27:01 +0000 (17:27 +0000)
MagickCore/cache.c

index 82257e0484def5c573e9a1ae24166b1657418c39..7964a1554dfe95e1821d46458c4d42804e69f52d 100644 (file)
@@ -1209,12 +1209,14 @@ static inline void RelinquishPixelCachePixels(CacheInfo *cache_info)
     {
       cache_info->pixels=(Quantum *) UnmapBlob(cache_info->pixels,(size_t)
         cache_info->length);
+      (void) RelinquishUniqueFileResource(cache_info->cache_filename);
       RelinquishMagickResource(MapResource,cache_info->length);
     }
     case DiskCache:
     {
       if (cache_info->file != -1)
         (void) ClosePixelCacheOnDisk(cache_info);
+      (void) RelinquishUniqueFileResource(cache_info->cache_filename);
       RelinquishMagickResource(DiskResource,cache_info->length);
       break;
     }
@@ -1255,8 +1257,6 @@ MagickPrivate Cache DestroyPixelCache(Cache cache)
       (void) LogMagickEvent(CacheEvent,GetMagickModule(),"%s",message);
     }
   RelinquishPixelCachePixels(cache_info);
-  if ((cache_info->type == MapCache) || (cache_info->type == DiskCache))
-    (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,
@@ -3911,8 +3911,6 @@ static MagickBooleanType OpenPixelCache(Image *image,const MapMode mode,
     {
       status=ClonePixelCachePixels(cache_info,&source_info,exception);
       RelinquishPixelCachePixels(&source_info);
-      if ((source_info.type == MapCache) || (source_info.type == DiskCache))
-        (void) RelinquishUniqueFileResource(source_info.cache_filename);
     }
   if (image->debug != MagickFalse)
     {