I looked deeper, following the src. The change I referenced applies when clients send a color to the server. Gamma goes through a completely different code path. And a rather complex one at that, eventually through a function pointer. That same error (y=x<<8 insted of y=x|x<<8) was added in the RANDR extension (much younger than the other code). It looks like RANDR's xf86RandR12ChangeGamma() is the default ChangeGamma function in the current code base. I'll send a patch to fix RANDR's gamma_to_ramp(). It should be included in future releases of the X server. Are you sure nothing calls xgamma(1) in your xinitrc, xsession or any system-wide startup files? -JimC -- James Cloos <cloos@xxxxxxxxxxx> OpenPGP: 1024D/ED7DAEA6