Was accidentally disabling rotation updates in mode set.
Setting a mode on an unrotated CRTC was causing all of the rotation updates to be disabled; the loop looking for active rotation wasn't actually looking at each crtc, it was looking at the modified crtc many times. (cherry picked from commit 8b217dee3a6c46b13fc9571a4a9a95bc55686cdb)
This commit is contained in:
parent
806a537e64
commit
7ca4baffb5
|
@ -284,7 +284,7 @@ xf86RotateRedisplay(ScreenPtr pScreen)
|
|||
{
|
||||
xf86CrtcPtr crtc = xf86_config->crtc[c];
|
||||
|
||||
if (crtc->rotation != RR_Rotate_0)
|
||||
if (crtc->rotation != RR_Rotate_0 && crtc->enabled)
|
||||
{
|
||||
BoxRec box;
|
||||
RegionRec crtc_damage;
|
||||
|
@ -338,7 +338,8 @@ xf86RotateDestroy (xf86CrtcPtr crtc)
|
|||
}
|
||||
|
||||
for (c = 0; c < xf86_config->num_crtc; c++)
|
||||
if (crtc->rotatedPixmap || crtc->rotatedData)
|
||||
if (xf86_config->crtc[c]->rotatedPixmap ||
|
||||
xf86_config->crtc[c]->rotatedData)
|
||||
return;
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue