From 9e49daba85a084202b04ab2598b4ad4587fecce7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 27 Feb 2012 12:08:38 -0500 Subject: [PATCH] xfreerdp: apply X2GO patch --- client/X11/xfreerdp.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/client/X11/xfreerdp.c b/client/X11/xfreerdp.c index 8ee4f08..842a928 100644 --- a/client/X11/xfreerdp.c +++ b/client/X11/xfreerdp.c @@ -353,6 +353,7 @@ boolean xf_get_pixmap_info(xfInfo* xfi) XVisualInfo template; XPixmapFormatValues* pf; XPixmapFormatValues* pfs; + XWindowAttributes window_attributes; pfs = XListPixmapFormats(xfi->display, &pf_count); @@ -379,6 +380,12 @@ boolean xf_get_pixmap_info(xfInfo* xfi) template.class = TrueColor; template.screen = xfi->screen_number; + if (XGetWindowAttributes(xfi->display, RootWindowOfScreen(xfi->screen), &window_attributes) == 0) + { + printf("xf_get_pixmap_info: XGetWindowAttributes failed\n"); + return false; + } + vis = XGetVisualInfo(xfi->display, VisualClassMask | VisualScreenMask, &template, &vi_count); if (vis == NULL) @@ -392,7 +399,7 @@ boolean xf_get_pixmap_info(xfInfo* xfi) { vi = vis + i; - if (vi->depth == xfi->depth) + if (vi->visual == window_attributes.visual) { xfi->visual = vi->visual; break; -- 2.7.4