summaryrefslogtreecommitdiff
blob: 8a7383f4e09614ab73aa403603f414f62e68e420 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Index: cups-1.3.6/filter/image-gif.c
===================================================================
--- cups-1.3.6.orig/filter/image-gif.c
+++ cups-1.3.6/filter/image-gif.c
@@ -38,6 +38,8 @@
 #define GIF_INTERLACE	0x40
 #define GIF_COLORMAP	0x80
 
+#define MAX_LWZ_BITS	12
+
 typedef cups_ib_t	gif_cmap_t[256][4];
 typedef short		gif_table_t[4096];
 
@@ -462,6 +464,9 @@ gif_read_image(FILE         *fp,	/* I - 
   pass      = 0;
   code_size = getc(fp);
 
+  if (code_size > MAX_LWZ_BITS)
+    return (-1);
+
   if (!pixels)
     return (-1);