Use BIOS function to restore palette on LeaveVT().
This fixes messed up colors in text mode on VT switch.
It is already done in CloseScreen().

Signed-off-by: Egbert Eich <[email protected]>
---
 src/vesa.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/vesa.c b/src/vesa.c
index 93b4909..1780a3b 100644
--- a/src/vesa.c
+++ b/src/vesa.c
@@ -1133,7 +1133,12 @@ static void
 VESALeaveVT(VT_FUNC_ARGS_DECL)
 {
     SCRN_INFO_PTR(arg);
+    VESAPtr pVesa = VESAGetRec(pScrn);
+
     VESASaveRestore(pScrn, MODE_RESTORE);
+    if (pVesa->savedPal)
+       VBESetGetPaletteData(pVesa->pVbe, TRUE, 0, 256,
+                            pVesa->savedPal, FALSE, TRUE);
 }
 
 static Bool
-- 
1.8.1.4

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to