]> granicus.if.org Git - imagemagick/commitdiff
Fixed duplicate call to ShredFile.
authordirk <dirk@git.imagemagick.org>
Sun, 12 Apr 2015 14:33:23 +0000 (14:33 +0000)
committerdirk <dirk@git.imagemagick.org>
Sun, 12 Apr 2015 14:33:23 +0000 (14:33 +0000)
MagickCore/resource.c

index 1031dad69d07bd3245f7a87faa6e4e9784ed2d20..16c1979913bb8825d8639356f086634a0139d1d4 100644 (file)
@@ -979,18 +979,24 @@ MagickExport MagickBooleanType RelinquishUniqueFileResource(const char *path)
   char
     cache_path[MaxTextExtent];
 
+  MagickBooleanType
+    status;
+
   assert(path != (const char *) NULL);
+  status=MagickFalse;
   (void) LogMagickEvent(ResourceEvent,GetMagickModule(),"%s",path);
   if (resource_semaphore == (SemaphoreInfo *) NULL)
     ActivateSemaphoreInfo(&resource_semaphore);
   LockSemaphoreInfo(resource_semaphore);
   if (temporary_resources != (SplayTreeInfo *) NULL)
-    (void) DeleteNodeFromSplayTree(temporary_resources, (const void *) path);
+    status=DeleteNodeFromSplayTree(temporary_resources, (const void *) path);
   UnlockSemaphoreInfo(resource_semaphore);
   (void) CopyMagickString(cache_path,path,MaxTextExtent);
   AppendImageFormat("cache",cache_path);
   (void) ShredFile(cache_path);
-  return(ShredFile(path));
+  if (status == MagickFalse)
+    status=ShredFile(path);
+  return(status);
 }
 \f
 /*