From: cristy Date: Mon, 15 Nov 2010 00:49:30 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~8504 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2224dcdd80d774e98907ebb870f62792e942b73b;p=imagemagick --- diff --git a/ChangeLog b/ChangeLog index 8e86846ff..13476f135 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2010-11-14 6.6.5-9 Cristy + * The splice option no longer throws spurious "pixels are not authentic" + exceptions. + 2010-11-14 6.6.5-9 Nicolas Robidoux * Lanczos2Sharp blur tweaked. New blur = 0.9549963639785485. diff --git a/magick/transform.c b/magick/transform.c index 52275cb45..13ae7ad35 100644 --- a/magick/transform.c +++ b/magick/transform.c @@ -159,7 +159,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, progress=0; image_view=AcquireCacheView(image); chop_view=AcquireCacheView(chop_image); -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(dynamic,4) shared(progress,status) omp_throttle(1) #endif for (y=0; y < (ssize_t) extent.y; y++) @@ -210,7 +210,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, MagickBooleanType proceed; -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp critical (MagickCore_ChopImage) #endif proceed=SetImageProgress(image,ChopImageTag,progress++,image->rows); @@ -221,7 +221,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, /* Extract chop image. */ -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(dynamic,4) shared(progress,status) omp_throttle(1) #endif for (y=0; y < (ssize_t) (image->rows-(extent.y+extent.height)); y++) @@ -273,7 +273,7 @@ MagickExport Image *ChopImage(const Image *image,const RectangleInfo *chop_info, MagickBooleanType proceed; -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp critical (MagickCore_ChopImage) #endif proceed=SetImageProgress(image,ChopImageTag,progress++,image->rows); @@ -318,17 +318,17 @@ MagickExport Image *ConsolidateCMYKImages(const Image *images, CacheView *cmyk_view, *image_view; - + Image *cmyk_image, *cmyk_images; - ssize_t - y; - register ssize_t i; + ssize_t + y; + /* Consolidate separate C, M, Y, and K planes into a single image. */ @@ -644,7 +644,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry, progress=0; image_view=AcquireCacheView(image); crop_view=AcquireCacheView(crop_image); -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(dynamic,4) shared(progress,status) omp_throttle(1) #endif for (y=0; y < (ssize_t) crop_image->rows; y++) @@ -686,7 +686,7 @@ MagickExport Image *CropImage(const Image *image,const RectangleInfo *geometry, MagickBooleanType proceed; -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp critical (MagickCore_CropImage) #endif proceed=SetImageProgress(image,CropImageTag,progress++,image->rows); @@ -998,7 +998,7 @@ MagickExport Image *FlipImage(const Image *image,ExceptionInfo *exception) MagickBooleanType proceed; -#if defined(MAGICKCORE_OPENMP_SUPPORT) +#if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp critical (MagickCore_FlipImage) #endif proceed=SetImageProgress(image,FlipImageTag,progress++,image->rows); @@ -1601,6 +1601,8 @@ MagickExport Image *SpliceImage(const Image *image, continue; p=GetCacheViewVirtualPixels(image_view,0,y-(ssize_t) splice_geometry.height, image->columns,1,exception); + if ((y < 0) || (y >= splice_image->rows)) + continue; q=QueueCacheViewAuthenticPixels(splice_view,0,y,splice_image->columns,1, exception); if ((p == (const PixelPacket *) NULL) || (q == (PixelPacket *) NULL))