--- ray/src/px/x11image.c 2005/01/07 22:05:30 2.70 +++ ray/src/px/x11image.c 2006/05/29 17:31:25 2.72 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: x11image.c,v 2.70 2005/01/07 22:05:30 greg Exp $"; +static const char RCSid[] = "$Id: x11image.c,v 2.72 2006/05/29 17:31:25 greg Exp $"; #endif /* * x11image.c - driver for X-windows @@ -397,9 +397,9 @@ init( /* get data and open window */ windowName.encoding = iconName.encoding = XA_STRING; windowName.format = iconName.format = 8; windowName.value = (u_char *)name; - windowName.nitems = strlen(windowName.value); + windowName.nitems = strlen((char *)windowName.value); iconName.value = (u_char *)name; - iconName.nitems = strlen(windowName.value); + iconName.nitems = strlen((char *)windowName.value); xclshints.res_name = NULL; xclshints.res_class = "Ximage"; @@ -447,25 +447,25 @@ viscmp( /* compare visual to see which is better, des register int *rp; if (v1->class == v2->class) { - if (v1->class == TrueColor || v1->class == DirectColor) { - /* prefer 24-bit to 32-bit */ - if (v1->depth == 24 && v2->depth == 32) + if ((v1->class == TrueColor) | (v1->class == DirectColor)) { + /* prefer 24-bit */ + if ((v1->depth == 24) & (v2->depth > 24)) return(-1); - if (v1->depth == 32 && v2->depth == 24) + if ((v1->depth > 24) & (v2->depth == 24)) return(1); /* go for maximum depth otherwise */ return(v2->depth - v1->depth); } /* don't be too greedy */ - if (maxcolors <= 1<depth && maxcolors <= 1<depth) + if ((maxcolors <= 1<depth) & (maxcolors <= 1<depth)) return(v1->depth - v2->depth); return(v2->depth - v1->depth); } /* prefer Pseudo when < 15-bit */ - if ((v1->class == TrueColor || v1->class == DirectColor) && + if ((v1->class == TrueColor) | (v1->class == DirectColor) && v1->depth < 15) bad1 = 1; - if ((v2->class == TrueColor || v2->class == DirectColor) && + if ((v2->class == TrueColor) | (v2->class == DirectColor) && v2->depth < 15) bad2 = -1; if (bad1 | bad2) @@ -571,7 +571,7 @@ getras(void) /* get raster file */ ourdata = (unsigned char *)malloc(ymax*((xmax+7)/8)); if (ourdata == NULL) goto fail; - ourras = make_raster(thedisplay, &ourvis, 1, ourdata, + ourras = make_raster(thedisplay, &ourvis, 1, (char *)ourdata, xmax, ymax, 8); if (ourras == NULL) goto fail; @@ -582,7 +582,7 @@ getras(void) /* get raster file */ if (ourdata == NULL) goto fail; ourras = make_raster(thedisplay, &ourvis, datsiz*8, - ourdata, xmax, ymax, datsiz*8); + (char *)ourdata, xmax, ymax, datsiz*8); if (ourras == NULL) goto fail; getfull(); @@ -590,7 +590,7 @@ getras(void) /* get raster file */ ourdata = (unsigned char *)malloc(xmax*ymax); if (ourdata == NULL) goto fail; - ourras = make_raster(thedisplay, &ourvis, 8, ourdata, + ourras = make_raster(thedisplay, &ourvis, 8, (char *)ourdata, xmax, ymax, 8); if (ourras == NULL) goto fail;