diff options
Diffstat (limited to 'www/Mosaic/patches/patch-ao')
-rw-r--r-- | www/Mosaic/patches/patch-ao | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/www/Mosaic/patches/patch-ao b/www/Mosaic/patches/patch-ao new file mode 100644 index 00000000000..a1d8f8691f8 --- /dev/null +++ b/www/Mosaic/patches/patch-ao @@ -0,0 +1,49 @@ +$NetBSD: patch-ao,v 1.1 1999/06/07 20:47:25 tron Exp $ + +--- src/pixmaps.c.orig Tue Jun 25 23:53:50 1996 ++++ src/pixmaps.c Mon Jun 7 22:34:53 1999 +@@ -685,6 +685,12 @@ + bshift = highbit(theVisual->blue_mask) - 7; + bmap_order = BitmapBitOrder(XtDisplay(wid)); + ++ newimage = XCreateImage(XtDisplay(wid), ++ DefaultVisual(XtDisplay(wid), ++ DefaultScreen(XtDisplay(wid))), ++ depth, ZPixmap, 0, (char *)bit_data, ++ width, height, 8, 0); ++ + bitp = bit_data; + datap = data; + for (w = size; w > 0; w--) +@@ -698,7 +704,10 @@ + + if (bmap_order == MSBFirst) + { +- *bitp++ = (unsigned char)((c >> 24) & 0xff); ++ if (newimage->bits_per_pixel == 32) ++ { ++ *bitp++ = (unsigned char)((c >> 24) & 0xff); ++ } + *bitp++ = (unsigned char)((c >> 16) & 0xff); + *bitp++ = (unsigned char)((c >> 8) & 0xff); + *bitp++ = (unsigned char)(c & 0xff); +@@ -708,15 +717,13 @@ + *bitp++ = (unsigned char)(c & 0xff); + *bitp++ = (unsigned char)((c >> 8) & 0xff); + *bitp++ = (unsigned char)((c >> 16) & 0xff); +- *bitp++ = (unsigned char)((c >> 24) & 0xff); ++ if (newimage->bits_per_pixel == 32) ++ { ++ *bitp++ = (unsigned char)((c >> 24) & 0xff); ++ } + } + } + +- newimage = XCreateImage(XtDisplay(wid), +- DefaultVisual(XtDisplay(wid), +- DefaultScreen(XtDisplay(wid))), +- depth, ZPixmap, 0, (char *)bit_data, +- width, height, 32, 0); + break; + default: + newimage = NULL; |