xorg-x11-server/commit-f7dd0c7.diff

25 lines
832 B
Diff

commit f7dd0c72b8f861f4d5443a43d1013e3fe3db43ca
Author: Matthias Hopf <mhopf@suse.de>
Date: Mon Nov 12 15:11:03 2007 +0100
Only clear crtc of output if it is the one we're actually working on.
Upon recreation of the RandR internal data structures in RRCrtcNotify() the
crtc of an output could be NULLed if the crtc was shared (cloned) between two
outputs and one of them got another crtc assigned.
diff --git a/randr/rrcrtc.c b/randr/rrcrtc.c
index db5007e..43cfb29 100644
--- a/randr/rrcrtc.c
+++ b/randr/rrcrtc.c
@@ -150,7 +150,8 @@ RRCrtcNotify (RRCrtcPtr crtc,
break;
if (i == numOutputs)
{
- crtc->outputs[j]->crtc = NULL;
+ if (crtc->outputs[j]->crtc == crtc)
+ crtc->outputs[j]->crtc = NULL;
RROutputChanged (crtc->outputs[j], FALSE);
RRCrtcChanged (crtc, FALSE);
}