2010-07-01 6.6.3-0 Chris Madison <madisonblu@gmail...>
* Pinging the DJVU image format no longer faults.
+ * Check for time-limit-exceeded in only one thread.
2010-06-28 6.6.2-10 Cristy <quetzlzacatenango@image...>
* Support the tiff:fill-order define.
static MagickSizeType
time_limit = 0;
+ static time_t
+ cache_timer = 0;
+
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
+ status=MagickTrue;
+ LockSemaphoreInfo(image->semaphore);
if (time_limit == 0)
- time_limit=GetMagickResourceLimit(TimeResource);
- if (time_limit != MagickResourceInfinity)
{
- static time_t
- cache_timer = 0;
-
- if (cache_timer == 0)
- cache_timer=time((time_t *) NULL);
- if ((MagickSizeType) (time((time_t *) NULL)-cache_timer) >= time_limit)
- ThrowFatalException(ResourceLimitFatalError,"TimeLimitExceeded");
+ time_limit=GetMagickResourceLimit(TimeResource);
+ cache_timer=time((time_t *) NULL);
}
- status=MagickTrue;
- LockSemaphoreInfo(image->semaphore);
+ if ((time_limit != MagickResourceInfinity) &&
+ ((MagickSizeType) (time((time_t *) NULL)-cache_timer) >= time_limit))
+ ThrowFatalException(ResourceLimitFatalError,"TimeLimitExceeded");
assert(image->cache != (Cache) NULL);
cache_info=(CacheInfo *) image->cache;
destroy=MagickFalse;