From 670dd11a8a0c97345919b28502c950d3a3ef776c Mon Sep 17 00:00:00 2001 From: rsc Date: Fri, 18 Mar 2005 18:55:47 +0000 Subject: be more faithful to plan 9 environment -- allocate window on top of screen. --- src/libdraw/x11-init.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/libdraw/x11-init.c') diff --git a/src/libdraw/x11-init.c b/src/libdraw/x11-init.c index 14c96a66..b2b3ca73 100644 --- a/src/libdraw/x11-init.c +++ b/src/libdraw/x11-init.c @@ -70,7 +70,8 @@ _initdisplay(void (*error)(Display*, char*), char *label) d->error = error; _initdisplaymemimage(d, m); - d->screenimage = getimage0(d, 0); + d->image = getimage0(d, 0); + return d; } @@ -146,10 +147,15 @@ getwindow(Display *d, int ref) * so we have to reuse the image structure * memory we already have. */ - oi = d->screenimage; + oi = d->image; i = getimage0(d, oi); - screen = d->screenimage = d->image = i; + d->image = i; // fprint(2, "getwindow %p -> %p\n", oi, i); + + _screen = allocscreen(i, d->white, 0); + _freeimage1(screen); + screen = _allocwindow(screen, _screen, i->r, ref, DWhite); + d->screenimage = screen; return 0; } -- cgit v1.2.3