summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2010-11-15 11:25:14 +1000
committerJeremy Huddleston <jeremyhu@apple.com>2010-12-02 12:17:00 -0800
commit3b7becd98ad96fa798b25fe1a478586944fc2610 (patch)
tree6157f6900d7b51e9f340cbbdf4e96dff51d68957
parent602ad9868421f6abb9cc13ed43699e43e2f3e02c (diff)
xfree86: store the screen's gamma information on init.
This fixes a gamma issue on vt switch observed with KDM. VT switching away and back would result in a black screen. Avoid this by storing the current gamma information on init. https://bugzilla.redhat.com/show_bug.cgi?id=533217 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 566d09a5cd6452ee2e05e23d2205e7c3aa31f0da)
-rw-r--r--hw/xfree86/modes/xf86RandR12.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
index 040c03659..086d32585 100644
--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
@@ -1802,6 +1802,7 @@ xf86RandR12Init12 (ScreenPtr pScreen)
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
rrScrPrivPtr rp = rrGetScrPriv(pScreen);
XF86RandRInfoPtr randrp = XF86RANDRINFO(pScreen);
+ int i;
rp->rrGetInfo = xf86RandR12GetInfo12;
rp->rrScreenSetSize = xf86RandR12ScreenSetSize;
@@ -1831,6 +1832,9 @@ xf86RandR12Init12 (ScreenPtr pScreen)
*/
if (!xf86RandR12SetInfo12 (pScreen))
return FALSE;
+ for (i = 0; i < rp->numCrtcs; i++) {
+ xf86RandR12CrtcGetGamma(pScreen, rp->crtcs[i]);
+ }
return TRUE;
}