blob: 34b0c0a4b665c9be0aeeed23cc4190b5df30834b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
--- src/gd_png.c.orig 2013-06-25 11:58:23.000000000 +0200
+++ src/gd_png.c 2013-08-01 07:08:18.000000000 +0200
@@ -196,6 +196,14 @@
png_read_info (png_ptr, info_ptr); /* read all PNG info up to image data */
png_get_IHDR (png_ptr, info_ptr, &width, &height, &bit_depth, &color_type, &interlace_type, NULL, NULL);
+
+ if (overflow2(sizeof (int), width)) {
+ return NULL;
+ }
+ if (overflow2(sizeof (int) * width, height)) {
+ return NULL;
+ }
+
if ((color_type == PNG_COLOR_TYPE_RGB) || (color_type == PNG_COLOR_TYPE_RGB_ALPHA)
|| color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
im = gdImageCreateTrueColor ((int) width, (int) height);
|