Commit 30044b22 authored by Michel Dänzer's avatar Michel Dänzer Committed by Adam Jackson
Browse files

xfree86/modes: Don't clobber gamma LUT of compatibility output's CRTC

If the driver calls xf86HandleColormaps, CMapChangeGamma updates the HW
gamma LUT of all CRTCs via xf86RandR12LoadPalette. However,
xf86RandR12ChangeGamma was then clobbering the gamma LUT of the RandR
1.2 compatibility output's CRTC with the gamma curves computed from the
screen's global gamma values.

Fix this by bailing if xf86RandR12LoadPalette is installed.

Fixes: 02ff0a5d "xf86RandR12: Fix XF86VidModeSetGamma triggering a
                     BadImplementation error"
parent cc05c019
......@@ -2019,7 +2019,7 @@ xf86RandR12ChangeGamma(ScrnInfoPtr pScrn, Gamma gamma)
RRCrtcPtr randr_crtc = xf86CompatRRCrtc(pScrn);
int size;
if (!randr_crtc)
if (!randr_crtc || pScrn->LoadPalette == xf86RandR12LoadPalette)
return Success;
size = max(0, randr_crtc->gammaSize);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment