--- lesstif2-0.94.4.orig/lib/Xm-2.1/Xpmcreate.c +++ lesstif2-0.94.4/lib/Xm-2.1/Xpmcreate.c @@ -1265,10 +1265,10 @@ register char *src; register char *dst; register unsigned int *iptr; - register unsigned int x, y, i; + register unsigned int x, y; register char *data; Pixel pixel, px; - int nbytes, depth, ibu, ibpp; + int nbytes, depth, ibu, ibpp, i; data = image->data; iptr = pixelindex; --- lesstif2-0.94.4.orig/lib/Xm-2.1/Xpmscan.c +++ lesstif2-0.94.4/lib/Xm-2.1/Xpmscan.c @@ -672,8 +672,8 @@ char *dst; unsigned int *iptr; char *data; - unsigned int x, y, i; - int bits, depth, ibu, ibpp, offset; + unsigned int x, y; + int bits, depth, ibu, ibpp, offset, i; unsigned long lbt; Pixel pixel, px; @@ -684,6 +684,9 @@ ibpp = image->bits_per_pixel; offset = image->xoffset; + if (image->bitmap_unit < 0) + return (XpmNoMemory); + if ((image->bits_per_pixel | image->depth) == 1) { ibu = image->bitmap_unit; for (y = 0; y < height; y++)