74 lines
1.8 KiB
Diff
74 lines
1.8 KiB
Diff
Index: shared/VTsw_usl.c
|
|
===================================================================
|
|
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/os-support/shared/VTsw_usl.c,v
|
|
retrieving revision 1.5
|
|
diff -u -r1.5 VTsw_usl.c
|
|
--- shared/VTsw_usl.c 3 Jul 2005 07:01:35 -0000 1.5
|
|
+++ shared/VTsw_usl.c 29 Jun 2006 09:33:05 -0000
|
|
@@ -64,15 +64,15 @@
|
|
xf86VTSwitchAway()
|
|
{
|
|
xf86Info.vtRequestsPending = FALSE;
|
|
+#ifdef OSSWITCHAWAY
|
|
+ OSSWITCHAWAY;
|
|
+#endif
|
|
if (ioctl(xf86Info.consoleFd, VT_RELDISP, 1) < 0)
|
|
{
|
|
return(FALSE);
|
|
}
|
|
else
|
|
{
|
|
-#ifdef OSSWITCHAWAY
|
|
- OSSWITCHAWAY;
|
|
-#endif
|
|
return(TRUE);
|
|
}
|
|
}
|
|
--- linux/lnx_init.c.orig 2007-08-23 21:04:53.000000000 +0200
|
|
+++ linux/lnx_init.c 2007-09-29 16:19:53.771798500 +0200
|
|
@@ -240,9 +240,6 @@
|
|
|
|
if (!ShareVTs)
|
|
{
|
|
-#if defined(DO_OS_FONTRESTORE)
|
|
- lnx_savefont();
|
|
-#endif
|
|
/*
|
|
* now get the VT. This _must_ succeed, or else fail completely.
|
|
*/
|
|
@@ -254,6 +251,10 @@
|
|
FatalError("xf86OpenConsole: VT_WAITACTIVE failed: %s\n",
|
|
strerror(errno));
|
|
|
|
+#if defined(DO_OS_FONTRESTORE)
|
|
+ lnx_savefont();
|
|
+#endif
|
|
+
|
|
if (ioctl(xf86Info.consoleFd, VT_GETMODE, &VT) < 0)
|
|
FatalError("xf86OpenConsole: VT_GETMODE failed %s\n",
|
|
strerror(errno));
|
|
@@ -342,6 +343,11 @@
|
|
|
|
if (VTSwitch)
|
|
{
|
|
+#if defined(DO_OS_FONTRESTORE)
|
|
+ if (xf86Info.vtno == vtno) /* check if we are active */
|
|
+ lnx_restorefont();
|
|
+ lnx_freefontdata();
|
|
+#endif
|
|
/*
|
|
* Perform a switch back to the active VT when we were started
|
|
*/
|
|
@@ -356,11 +362,6 @@
|
|
activeVT = -1;
|
|
}
|
|
|
|
-#if defined(DO_OS_FONTRESTORE)
|
|
- if (xf86Info.vtno == vtno) /* check if we are active */
|
|
- lnx_restorefont();
|
|
- lnx_freefontdata();
|
|
-#endif
|
|
}
|
|
close(xf86Info.consoleFd); /* make the vt-manager happy */
|
|
|