[7249] in Athena Bugs
decmips 7.2R: xps/X11.c
daemon@ATHENA.MIT.EDU (daemon@ATHENA.MIT.EDU)
Thu Mar 7 11:33:57 1991
Date: Thu, 7 Mar 91 11:33:38 EST
From: John T Kohl <jtkohl@MIT.EDU>
To: bugs@MIT.EDU
System name: quicksilver
Type and version: KN01 7.2R
Display type: PM-MONO
What were you trying to do?
Run xps on a sun-4.
What's wrong:
1) it coredumps
2) it doesn't display since it gets an allowable but not
expected ordering of events from the sun X11R4 X server.
What should have happened:
It should work. patches:
*** /source/athena/usr.athena/xps/X11.c Tue May 1 09:43:59 1990
--- /tmp/X11.c Thu Mar 7 11:31:39 1991
***************
*** 291,301 ****
to->flags = ISWIN;
vmask = CWBackPixel|CWBorderPixel|CWBackingStore|
! CWBackingPlanes;
xswa.background_pixel = whitepixel;
xswa.border_pixel = blackpixel;
xswa.backing_store = Always;
xswa.backing_planes = AllPlanes;
xshints.x = DisplayWidth(dpy, SCREEN) - width;
xshints.y = 0;
xshints.width = width;
--- 291,303 ----
to->flags = ISWIN;
vmask = CWBackPixel|CWBorderPixel|CWBackingStore|
! CWBackingPlanes|CWEventMask;
xswa.background_pixel = whitepixel;
xswa.border_pixel = blackpixel;
xswa.backing_store = Always;
xswa.backing_planes = AllPlanes;
+ /* need to select exposures at create time to make sure we get one! */
+ xswa.event_mask = ExposureMask;
xshints.x = DisplayWidth(dpy, SCREEN) - width;
xshints.y = 0;
xshints.width = width;
***************
*** 317,323 ****
if (TESTING)
XSetNormalHints(dpy, hard->w, &xshints);
- XSelectInput(dpy, hard->w, ExposureMask);
XMapWindow(dpy, hard->w);
XFlush(dpy);
do { /* modified by AMG for testing */
--- 319,324 ----
***************
*** 507,513 ****
if (from != NULL && !IsBitmapHardware(from))
Punt("Paint() called with non-bitmap source.\n");
! if (to == NULL || !from->touched) return;
tohard = (Hardware) to->hard.addr;
b = colour.brightness;
--- 508,514 ----
if (from != NULL && !IsBitmapHardware(from))
Punt("Paint() called with non-bitmap source.\n");
! if (to == NULL || !from || !from->touched) return;
tohard = (Hardware) to->hard.addr;
b = colour.brightness;
Please describe any relevant documentation references:
XCreateWindow(3X), Ralph Swick