From: cristy Date: Tue, 16 Apr 2013 19:10:51 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~3873 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6dac2dade42ed4f081ee8ebec05f09b12b2f62bf;p=imagemagick --- diff --git a/MagickCore/blob.c b/MagickCore/blob.c index 13f668afb..70577427f 100644 --- a/MagickCore/blob.c +++ b/MagickCore/blob.c @@ -2154,6 +2154,9 @@ MagickExport unsigned char *MapBlob(int file,const MapMode mode, if (file == -1) #if defined(MAP_ANONYMOUS) flags|=MAP_ANONYMOUS; +#if defined(MAGICKCORE_HAVE_HUGEPAGES) && defined(MAP_HUGETLB) + flags|=MAP_HUGETLB; +#endif #else return((unsigned char *) NULL); #endif diff --git a/MagickCore/cache.c b/MagickCore/cache.c index be869ab95..774df519d 100644 --- a/MagickCore/cache.c +++ b/MagickCore/cache.c @@ -3277,9 +3277,13 @@ MagickPrivate const Quantum *GetVirtualPixelsNexus(const Cache cache, static inline void AllocatePixelCachePixels(CacheInfo *cache_info) { - cache_info->mapped=MagickFalse; - cache_info->pixels=(Quantum *) MagickAssumeAligned(AcquireAlignedMemory(1, - (size_t) cache_info->length)); + cache_info->pixels=(Quantum *) NULL; + if (cache_info->length < MagickMaxBufferExtent) + { + cache_info->mapped=MagickFalse; + cache_info->pixels=(Quantum *) MagickAssumeAligned(AcquireAlignedMemory(1, + (size_t) cache_info->length)); + } if (cache_info->pixels == (Quantum *) NULL) { cache_info->mapped=MagickTrue;