From 5ad6a5d9d8ab7bdd6ecb5a48bd9791ceb4ad7508 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 24 Aug 2011 22:35:55 -0400 Subject: [PATCH] xfreerdp: revert to single region invalidation --- client/X11/xfreerdp.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/client/X11/xfreerdp.c b/client/X11/xfreerdp.c index 8e98d97d9..1f3d53704 100644 --- a/client/X11/xfreerdp.c +++ b/client/X11/xfreerdp.c @@ -69,6 +69,18 @@ void xf_end_paint(rdpUpdate* update) if (xfi->remote_app != True) { +#if 1 + if (gdi->primary->hdc->hwnd->invalid->null) + return; + + x = gdi->primary->hdc->hwnd->invalid->x; + y = gdi->primary->hdc->hwnd->invalid->y; + w = gdi->primary->hdc->hwnd->invalid->w; + h = gdi->primary->hdc->hwnd->invalid->h; + + XPutImage(xfi->display, xfi->primary, xfi->gc, xfi->image, x, y, x, y, w, h); + XCopyArea(xfi->display, xfi->primary, xfi->window->handle, xfi->gc, x, y, w, h, x, y); +#else int i; int ninvalid; HGDI_RGN* cinvalid; @@ -91,6 +103,7 @@ void xf_end_paint(rdpUpdate* update) } XFlush(xfi->display); +#endif } else {