Sophie

Sophie

distrib > Mandriva > 2007.1 > x86_64 > by-pkgid > 785320e4e4ccfb5cbbd5f624cdc5df1b > files > 8

tetex-3.0-31.4mdv2007.1.src.rpm

diff --git gd-2.0.33/gd_gif_in.c b/BUILD/gd-2.0.33/gd_gif_in.c
index 7668169..a1c848c 100644
--- gd-2.0.33/gd_gif_in.c
+++ gd-2.0.33/gd_gif_in.c
@@ -559,6 +559,10 @@ ReadImage(gdImagePtr im, gdIOCtx *fd, int len, int height, unsigned char (*cmap)
        /*} */
 
        while ((v = LWZReadByte(fd, &sd, FALSE, c, ZeroDataBlockP)) >= 0 ) {
+               if (v >= gdMaxColors) {
+                       v = 0;
+               }
+
                /* This how we recognize which colors are actually used. */
                if (im->open[v]) {
                        im->open[v] = 0;