File GraphicsMagick-CVE-2016-9830.patch of Package GraphicsMagick.7893
Index: GraphicsMagick-1.3.25/coders/png.c
===================================================================
--- GraphicsMagick-1.3.25.orig/coders/png.c 2016-05-30 19:19:54.000000000 +0200
+++ GraphicsMagick-1.3.25/coders/png.c 2016-12-13 13:15:17.809327909 +0100
@@ -2791,6 +2791,10 @@ static Image *ReadOneJNGImage(MngInfo *m
jng_height,
jng_width;
+ magick_int64_t
+ height_resource,
+ width_resource;
+
png_byte
jng_color_type,
jng_image_sample_depth,
@@ -2857,6 +2861,10 @@ static Image *ReadOneJNGImage(MngInfo *m
read_JSEP=MagickFalse;
reading_idat=MagickFalse;
+
+ width_resource = GetMagickResourceLimit(WidthResource);
+ height_resource = GetMagickResourceLimit(HeightResource);
+
for (;;)
{
char
@@ -3126,6 +3134,11 @@ static Image *ReadOneJNGImage(MngInfo *m
}
if (length)
MagickFreeMemory(chunk);
+
+
+ SetMagickResourceLimit(WidthResource,jng_width);
+ SetMagickResourceLimit(HeightResource,jng_height);
+
continue;
}
@@ -3421,6 +3434,10 @@ static Image *ReadOneJNGImage(MngInfo *m
if (logging)
(void) LogMagickEvent(CoderEvent,GetMagickModule(),
" exit ReadOneJNGImage()");
+
+ SetMagickResourceLimit(WidthResource,width_resource);
+ SetMagickResourceLimit(HeightResource,height_resource);
+
return (image);
}