Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:13.2:Update
ImageMagick
ImageMagick-CVE-2015-8897.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File ImageMagick-CVE-2015-8897.patch of Package ImageMagick
Index: ImageMagick-6.8.9-8/magick/transform.c =================================================================== --- ImageMagick-6.8.9-8.orig/magick/transform.c 2014-08-13 14:34:16.000000000 +0200 +++ ImageMagick-6.8.9-8/magick/transform.c 2016-06-09 12:07:46.972476692 +0200 @@ -67,6 +67,14 @@ #include "magick/thread-private.h" #include "magick/transform.h" +static inline MagickSizeType MagickMin(const MagickSizeType x, + const MagickSizeType y) +{ + if (x < y) + return(x); + return(y); +} + /* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % @@ -1733,6 +1741,7 @@ MagickExport Image *SpliceImage(const Im splice_geometry; ssize_t + columns, y; /* @@ -1817,6 +1826,7 @@ MagickExport Image *SpliceImage(const Im */ status=MagickTrue; progress=0; + columns=MagickMin(splice_geometry.x,(ssize_t) splice_image->columns); image_view=AcquireVirtualCacheView(image,exception); splice_view=AcquireAuthenticCacheView(splice_image,exception); #if defined(MAGICKCORE_OPENMP_SUPPORT) @@ -1840,7 +1850,8 @@ MagickExport Image *SpliceImage(const Im if (status == MagickFalse) continue; - p=GetCacheViewVirtualPixels(image_view,0,y,image->columns,1,exception); + p=GetCacheViewVirtualPixels(image_view,0,y,splice_image->columns,1, + exception); q=QueueCacheViewAuthenticPixels(splice_view,0,y,splice_image->columns,1, exception); if ((p == (const PixelPacket *) NULL) || (q == (PixelPacket *) NULL)) @@ -1850,7 +1861,7 @@ MagickExport Image *SpliceImage(const Im } indexes=GetCacheViewAuthenticIndexQueue(image_view); splice_indexes=GetCacheViewAuthenticIndexQueue(splice_view); - for (x=0; x < splice_geometry.x; x++) + for (x=0; x < columns; x++) { SetPixelRed(q,GetPixelRed(p)); SetPixelGreen(q,GetPixelGreen(p)); @@ -1918,10 +1929,10 @@ MagickExport Image *SpliceImage(const Im if (status == MagickFalse) continue; - p=GetCacheViewVirtualPixels(image_view,0,y-(ssize_t) splice_geometry.height, - image->columns,1,exception); - if ((y < 0) || (y >= (ssize_t) splice_image->rows)) + if ((y < 0) || (y >= (ssize_t)splice_image->rows)) continue; + p=GetCacheViewVirtualPixels(image_view,0,y-(ssize_t) splice_geometry.height, + splice_image->columns,1,exception); q=QueueCacheViewAuthenticPixels(splice_view,0,y,splice_image->columns,1, exception); if ((p == (const PixelPacket *) NULL) || (q == (PixelPacket *) NULL)) @@ -1931,7 +1942,7 @@ MagickExport Image *SpliceImage(const Im } indexes=GetCacheViewAuthenticIndexQueue(image_view); splice_indexes=GetCacheViewAuthenticIndexQueue(splice_view); - for (x=0; x < splice_geometry.x; x++) + for (x=0; x < columns; x++) { SetPixelRed(q,GetPixelRed(p)); SetPixelGreen(q,GetPixelGreen(p));
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor