summaryrefslogtreecommitdiff
path: root/src/sna/sna_driver.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-10-23 23:43:50 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2012-10-24 00:01:24 +0100
commit1a489142c8e6a4828348cc9afbd0f430d3b1e2d8 (patch)
tree9d77645f927f9adc3b82b4a8f0e71989a2858734 /src/sna/sna_driver.c
parentd87c2756db1af6e4af15864ab0f44d1454079236 (diff)
sna: Disable RandR hotplug events if Xinerama is enabled
Since RandR itself is disabled if Xinerama is enabled, for example with ZaphodHeads, calling RRGetInfo() upon a hotplug event generates an assertion. Reported-by: Stephen Liang <inteldriver@angrywalls.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55260 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/sna_driver.c')
-rw-r--r--src/sna/sna_driver.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 4a3bd04b..b7bd84a3 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -639,6 +639,12 @@ sna_uevent_init(ScrnInfoPtr scrn)
DBG(("%s\n", __FUNCTION__));
+ /* RandR will be disabled if Xinerama is active, and so generating
+ * RR hotplug events is then verboten.
+ */
+ if (!dixPrivateKeyRegistered(rrPrivKey))
+ return;
+
if (!xf86GetOptValBool(sna->Options, OPTION_HOTPLUG, &hotplug))
from = X_DEFAULT, hotplug = TRUE;
xf86DrvMsg(scrn->scrnIndex, from, "hotplug detection: \"%s\"\n",