| Summary: | SDL_SetGamma() does not work with Xorg server | ||
|---|---|---|---|
| Product: | SDL | Reporter: | Petr Pisar <ppisar> |
| Component: | video | Assignee: | Sam Lantinga <slouken> |
| Status: | RESOLVED ENDOFLIFE | QA Contact: | Sam Lantinga <slouken> |
| Severity: | normal | ||
| Priority: | P2 | CC: | daniel, metalcaedes |
| Version: | 1.2.15 | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Attachments: | Fix for 1.2.15 | ||
Here is link to Xorg bug report <https://bugs.freedesktop.org/show_bug.cgi?id=27222>. What about using SetGammaRamp with xrandr's XRRSetCrtcGamma()? Same could be done for 2.0 (It sucks hard that X.org hasn't fixed this bug since 2010, even though someone even analyzed the problem and said that it would only be a few hours of work) This still applies to SDL_GetWindowBrightness() and SDL_SetWindowGammaRamp() in SDL 2, only now there isn't a video->SetGamma() anymore so it isn't as easy to patch. As for SDL 1.2: this is probably a duplicate of bug #971, but with a much simpler solution, hopefully it will be merged. Hello, and sorry if you're getting several copies of this message by email, since we are closing many bugs at once here. We have decided to mark all SDL 1.2-related bugs as RESOLVED ENDOFLIFE, as we don't intend to work on SDL 1.2 any further, but didn't want to mark a large quantity of bugs as RESOLVED WONTFIX, to clearly show what was left unattended to and make it easily searchable. Our current focus is on SDL 2.0. If you are still having problems with an ENDOFLIFE bug, your absolute best option is to move your program to SDL2, as it will likely fix the problem by default, and give you access to modern platforms and tons of super-cool new features. Failing that, we _will_ accept small patches to fix these issues, and put them in revision control, although we do not intend to do any further official 1.2 releases. Failing that, please feel free to contact me directly by email (icculus@icculus.org) and we'll try to find some way to help you out of your situation. Thank you, --ryan. |
Created attachment 1008 [details] Fix for 1.2.15 Xorg server since version 1.7 (year 2010) has broken dynamic color map setting. X server does not adjust palette, but it does not report error. Thus SDL_SetGamma() preferring setting by SetGammaRamp() does not have any effect and any SDL application calling SDL_SetGamma() looks broken. Because I don't believe this Xorg bug will be fixed any soon, I propose to change SDL_SetGamme() to call video->SetGamma() only. Attached patch implements it.