From e7399181a9652ac32193318bf7ffd268c96ab117 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Wed, 16 Jan 2013 09:51:15 +0100 Subject: vncv: do flushimage() under display lock, zero ypdate rect --- sys/src/cmd/vnc/draw.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sys/src/cmd/vnc/draw.c b/sys/src/cmd/vnc/draw.c index 5a37bb5ab..9941b81f0 100644 --- a/sys/src/cmd/vnc/draw.c +++ b/sys/src/cmd/vnc/draw.c @@ -63,6 +63,7 @@ requestupdate(Vnc *v, int incremental) int x, y; lockdisplay(display); + flushimage(display, 1); x = Dx(screen->r); y = Dy(screen->r); unlockdisplay(display); @@ -236,8 +237,6 @@ dorectangle(Vnc *v) Rectangle r, subr, maxr; r = vncrdrect(v); - if(r.min.x == r.max.x || r.min.y == r.max.y) - return; if(!rectinrect(r, Rpt(ZP, v->dim))) sysfatal("bad rectangle from server: %R not in %R", r, Rpt(ZP, v->dim)); stride = Dx(r) * pixb; @@ -364,7 +363,6 @@ readfromserver(Vnc *v) n = vncrdshort(v); while(n-- > 0) dorectangle(v); - flushimage(display, 1); requestupdate(v, 1); break; -- cgit v1.2.3