*GetVirtualPixelsNexus(const Cache,NexusInfo *magick_restrict);
extern MagickPrivate const void
- *AcquirePixelCachePixels(const Image *,MagickSizeType *,ExceptionInfo *),
*GetVirtualMetacontentFromNexus(const Cache,NexusInfo *magick_restrict);
extern MagickPrivate MagickBooleanType
% %
% %
% %
-+ A c q u i r e P i x e l C a c h e P i x e l s %
+% A c q u i r e P i x e l C a c h e P i x e l s %
% %
% %
% %
%
% The format of the AcquirePixelCachePixels() method is:
%
-% const void *AcquirePixelCachePixels(const Image *image,
-% MagickSizeType *length,ExceptionInfo *exception)
+% void *AcquirePixelCachePixels(const Image *image,size_t *length,
+% ExceptionInfo *exception)
%
% A description of each parameter follows:
%
% o exception: return any errors or warnings in this structure.
%
*/
-MagickPrivate const void *AcquirePixelCachePixels(const Image *image,
- MagickSizeType *length,ExceptionInfo *exception)
+MagickExport void *AcquirePixelCachePixels(const Image *image,size_t *length,
+ ExceptionInfo *exception)
{
CacheInfo
*magick_restrict cache_info;
assert(cache_info->signature == MagickCoreSignature);
*length=0;
if ((cache_info->type != MemoryCache) && (cache_info->type != MapCache))
- return((const void *) NULL);
- *length=cache_info->length;
- return((const void *) cache_info->pixels);
+ return((void *) NULL);
+ *length=(size_t) cache_info->length;
+ return(cache_info->pixels);
}
\f
/*
const size_t,ExceptionInfo *) magick_hot_spot;
extern MagickExport void
+ *AcquirePixelCachePixels(const Image *,size_t *,ExceptionInfo *),
*GetAuthenticMetacontent(const Image *),
*GetPixelCachePixels(Image *,MagickSizeType *,ExceptionInfo *);
MagickBooleanType
status;
+ size_t
+ length;
+
ssize_t
y;
+ void
+ *pixels;
+
assert(image != (Image *) NULL);
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"...");
assert(image->signature == MagickCoreSignature);
+ pixels=AcquirePixelCachePixels(image,&length,exception);
+ if (pixels != (void *) NULL)
+ {
+ (void) memset(pixels,0,length);
+ return(MagickTrue);
+ }
/*
Reset image pixels.
*/
status=SetImageExtent(image,image->columns,image->rows,exception);
if (status == MagickFalse)
return(DestroyImageList(image));
- (void) ResetImagePixels(image,exception);
+ status=ResetImagePixels(image,exception);
+ if (status == MagickFalse)
+ return(DestroyImageList(image));
/*
Allocate image pixels.
*/