xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jan 11 16:28:54 UTC 2019


 hw/xfree86/modes/xf86RandR12.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 30044b2253c2dd51e1aedb2f897159c657ca8f0d
Author: Michel Dänzer <michel.daenzer at amd.com>
Date:   Wed Dec 5 18:31:27 2018 +0100

    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: 02ff0a5d7e32 "xf86RandR12: Fix XF86VidModeSetGamma triggering a
                         BadImplementation error"

diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
index b49d4c789..34f2652bf 100644
--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
@@ -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);


More information about the xorg-commit mailing list