#include "MagickCore/log.h"
#include "MagickCore/magick.h"
#include "MagickCore/memory_.h"
+#include "MagickCore/nt-base-private.h"
#include "MagickCore/pixel.h"
#include "MagickCore/pixel-accessor.h"
#include "MagickCore/policy.h"
register ssize_t
i;
- nexus_info=(NexusInfo **) AcquireQuantumMemory(number_threads,
+ nexus_info=(NexusInfo **) AcquireAlignedMemory(number_threads,
sizeof(*nexus_info));
if (nexus_info == (NexusInfo **) NULL)
ThrowFatalException(ResourceLimitFatalError,"MemoryAllocationFailed");
static inline void RelinquishCacheNexusPixels(NexusInfo *nexus_info)
{
if (nexus_info->mapped == MagickFalse)
- (void) RelinquishAlignedMemory(nexus_info->cache);
+ (void) RelinquishMagickMemory(nexus_info->cache);
else
(void) UnmapBlob(nexus_info->cache,(size_t) nexus_info->length);
nexus_info->cache=(Quantum *) NULL;
nexus_info[i]->signature=(~MagickSignature);
}
nexus_info[0]=(NexusInfo *) RelinquishMagickMemory(nexus_info[0]);
- nexus_info=(NexusInfo **) RelinquishMagickMemory(nexus_info);
+ nexus_info=(NexusInfo **) RelinquishAlignedMemory(nexus_info);
return(nexus_info);
}
\f
if (nexus_info->length != (MagickSizeType) ((size_t) nexus_info->length))
return(MagickFalse);
nexus_info->mapped=MagickFalse;
- nexus_info->cache=(Quantum *) AcquireAlignedMemory(1,(size_t)
+ nexus_info->cache=(Quantum *) AcquireMagickMemory((size_t)
nexus_info->length);
if (nexus_info->cache == (Quantum *) NULL)
{
static MagickBooleanType SetCacheAlphaChannel(Image *image,const Quantum alpha,
ExceptionInfo *exception)
{
+ CacheView
+ *image_view;
+
CacheInfo
*cache_info;
assert(cache_info->signature == MagickSignature);
image->matte=MagickTrue;
status=MagickTrue;
+ image_view=AcquireCacheView(image);
#if defined(MAGICKCORE_OPENMP_SUPPORT)
#pragma omp parallel for schedule(static,4) shared(status)
#endif
for (y=0; y < (ssize_t) image->rows; y++)
{
- const int
- id = GetOpenMPThreadId();
-
register Quantum
*restrict q;
if (status == MagickFalse)
continue;
- q=GetAuthenticPixelCacheNexus(image,0,y,image->columns,1,
- cache_info->nexus_info[id],exception);
+ q=GetCacheViewAuthenticPixels(image_view,0,y,image->columns,1,exception);
if (q == (Quantum *) NULL)
{
status=MagickFalse;
SetPixelAlpha(image,alpha,q);
q+=GetPixelChannels(image);
}
- status=SyncAuthenticPixelCacheNexus(image,cache_info->nexus_info[id],
- exception);
+ status=SyncCacheViewAuthenticPixels(image_view,exception);
}
+ image_view=DestroyCacheView(image_view);
return(status);
}