RWS@ZERMATT.LCS.MIT.EDU (Robert Scheifler) (09/23/87)
The following diffs should stop bitmap from dumping core when specifying colors on a color screen: *** /tmp/,RCSt1015165 Wed Sep 23 10:04:37 1987 --- bitmap.c Wed Sep 23 09:31:07 1987 *************** *** 1,5 **** #ifndef lint ! static char *rcsid_bitmap_c = "$Header: bitmap.c,v 1.12 87/09/11 23:19:52 sun Exp $"; #endif #include <errno.h> --- 1,5 ---- #ifndef lint ! static char *rcsid_bitmap_c = "$Header: bitmap.c,v 1.14 87/09/23 09:30:32 rws Exp $"; #endif #include <errno.h> *************** *** 380,400 **** XAllocColorCells(d, cmap, FALSE, masks, high_color ? 2 : 1, &background, 1)) { bdef.pixel = background; ! XStoreColor(&bdef); invertplane = masks[0]; if (high_color) { highlightplane = masks[1]; hdef.pixel = background | highlightplane; ! XStoreColor(&hdef); hdef.pixel |= invertplane; ! XStoreColor(&hdef); } else highlightplane = invertplane; fdef.pixel = foreground = background | invertplane; ! XStoreColor(&fdef); } if (brdr_color && XParseColor(d, cmap, brdr_color, &bdef) && ! XAllocColor(&bdef)) border = bdef.pixel; } --- 380,400 ---- XAllocColorCells(d, cmap, FALSE, masks, high_color ? 2 : 1, &background, 1)) { bdef.pixel = background; ! XStoreColor(d, cmap, &bdef); invertplane = masks[0]; if (high_color) { highlightplane = masks[1]; hdef.pixel = background | highlightplane; ! XStoreColor(d, cmap, &hdef); hdef.pixel |= invertplane; ! XStoreColor(d, cmap, &hdef); } else highlightplane = invertplane; fdef.pixel = foreground = background | invertplane; ! XStoreColor(d, cmap, &fdef); } if (brdr_color && XParseColor(d, cmap, brdr_color, &bdef) && ! XAllocColor(d, cmap, &bdef)) border = bdef.pixel; }