summaryrefslogtreecommitdiff
path: root/randr/rrcrtc.c
diff options
context:
space:
mode:
authorMatthias Hopf <mhopf@suse.de>2007-11-12 15:11:03 +0100
committerMatthias Hopf <mhopf@suse.de>2007-11-12 15:12:21 +0100
commitf7dd0c72b8f861f4d5443a43d1013e3fe3db43ca (patch)
treea12531ee413e2a5bb63f6f516491081dd9a432b3 /randr/rrcrtc.c
parentf48087b6c33c1f84bf2cfc0744b1c38697321c07 (diff)
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.
Diffstat (limited to 'randr/rrcrtc.c')
-rw-r--r--randr/rrcrtc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/randr/rrcrtc.c b/randr/rrcrtc.c
index db5007e28..43cfb2923 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);
}