From 8d1e9afb60a61bf490a282a16db1c15a9ad7d077 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 22 May 2014 12:34:05 +0100 Subject: [PATCH] intel-virtual-output: Probe after claiming virtual output Rerun a detection cycle after claiming the virtual output so that it is hidden again. References: https://bugs.freedesktop.org/show_bug.cgi?id=78293 Signed-off-by: Chris Wilson --- tools/virtual.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tools/virtual.c b/tools/virtual.c index d1076174..1d490c5a 100644 --- a/tools/virtual.c +++ b/tools/virtual.c @@ -784,6 +784,10 @@ static RROutput claim_virtual(struct display *display, char *output_name, int nc XRRDeleteOutputMode(dpy, rr_output, id); XRRDestroyMode(dpy, id); + /* And hide it again */ + res = XRRGetScreenResources(dpy, display->root); + if (res != NULL) + XRRFreeScreenResources(res); out: XUngrabServer(dpy); @@ -2852,9 +2856,14 @@ static void context_cleanup(struct context *ctx) continue; } } + XRRFreeScreenResources(res); + + /* And hide them again */ + res = XRRGetScreenResources(dpy, ctx->display->root); + if (res != NULL) + XRRFreeScreenResources(res); XUngrabServer(dpy); - XRRFreeScreenResources(res); if (ctx->singleton) XDeleteProperty(dpy, ctx->display->root, ctx->singleton);