From 116971053de3f0d38fe271ca34ddbbca94063b66 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Thu, 27 Nov 1997 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1997-11-27 --- port/devdraw.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/port/devdraw.c b/port/devdraw.c index 22e28bb3c90aa214ed7c4f2e6094bce20c0ce710..d0e1d729b24ff6f3dc325c35d0426cb15f305bd1 100644 --- a/port/devdraw.c +++ b/port/devdraw.c @@ -305,15 +305,21 @@ static void dstflush(int dstid, Memimage *dst, Rectangle r) { + Memlayer *l; + if(dstid == 0){ bbox(&flushrect, r); return; } - if(dst->layer == nil) - return; - if(dst->layer->screen->image->data != screenimage.data) + l = dst->layer; + if(l == nil) return; - r = rectaddpt(r, dst->layer->delta); + do{ + if(l->screen->image->data != screenimage.data) + return; + r = rectaddpt(r, l->delta); + l = l->screen->image->layer; + }while(l); bbox(&flushrect, r); }