Red Hat Bugzilla – Bug 891973
SDL with xorg-server-1.7 cannot set gamma
Last modified: 2017-01-10 09:46:36 EST
Created attachment 672492 [details]
SDL_SetGamma() allows to change screen gamma. Problem is it has no effect since xorg-server-1.7 (almost three years back). Try to run any SDL application, games usually supports setting gamma, or compile test/testgamma.c demo from libsdl tar ball (run it and press Up or Down to change gamma value).
SDL supports two methods how to change gamma: Directly and changing color palette. SDL_SetGamma() prefers changing palette but this is broken in Xorg server, so it does not change colors neither signal failure. This is problem in Xorg, but it's not likely to be fixed. See <https://bugs.freedesktop.org/show_bug.cgi?id=27222> for more details.
Attached patch fixes this problem on SDL side.
With this patch it's possible to change gamma, but it the effect takes only on one monitor of multi-head screen. I believe this is better state than no gamma settings, so I'm going to push this patch into F≥17.
SDL-1.2.15-3.fc18 has been submitted as an update for Fedora 18.
SDL-1.2.14-17.fc17 has been submitted as an update for Fedora 17.
SDL-1.2.15-3.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.
SDL-1.2.14-17.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.
xorg-server-1.19.0 fixed palette programming <https://bugs.freedesktop.org/show_bug.cgi?id=27222>, the gamma patch will be removed from SDL in Fedora ≥ 25.