aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/common/xf86VGAarbiter.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-07-14 06:40:19 +0000
committermarha <marha@users.sourceforge.net>2010-07-14 06:40:19 +0000
commit865af20e32591176d03acf984d9b5788d5ebce21 (patch)
treed5e216fa6fa5cdbb83834cc38bd5b96fc41c97de /xorg-server/hw/xfree86/common/xf86VGAarbiter.c
parent81124070f120ab658e094b64f6944d701b003a99 (diff)
downloadvcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.tar.gz
vcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.tar.bz2
vcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.zip
xserver libxcb git update 14/7/2010
Diffstat (limited to 'xorg-server/hw/xfree86/common/xf86VGAarbiter.c')
-rw-r--r--xorg-server/hw/xfree86/common/xf86VGAarbiter.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/xorg-server/hw/xfree86/common/xf86VGAarbiter.c b/xorg-server/hw/xfree86/common/xf86VGAarbiter.c
index e5fd0fb85..d75b86502 100644
--- a/xorg-server/hw/xfree86/common/xf86VGAarbiter.c
+++ b/xorg-server/hw/xfree86/common/xf86VGAarbiter.c
@@ -523,12 +523,16 @@ static Bool
VGAarbiterEnterVT(int index, int flags)
{
Bool val;
+ ScrnInfoPtr pScrn = xf86Screens[index];
ScreenPtr pScreen = screenInfo.screens[index];
VGAarbiterScreenPtr pScreenPriv = (VGAarbiterScreenPtr)dixLookupPrivate(
&pScreen->devPrivates, VGAarbiterScreenKey);
VGAGet();
- val = (*pScreenPriv->EnterVT)(index, flags);
+ pScrn->EnterVT = pScreenPriv->EnterVT;
+ val = (*pScrn->EnterVT)(index, flags);
+ pScreenPriv->EnterVT = pScrn->EnterVT;
+ pScrn->EnterVT = VGAarbiterEnterVT;
VGAPut();
return val;
}
@@ -536,12 +540,16 @@ VGAarbiterEnterVT(int index, int flags)
static void
VGAarbiterLeaveVT(int index, int flags)
{
+ ScrnInfoPtr pScrn = xf86Screens[index];
ScreenPtr pScreen = screenInfo.screens[index];
VGAarbiterScreenPtr pScreenPriv = (VGAarbiterScreenPtr)dixLookupPrivate(
&pScreen->devPrivates, VGAarbiterScreenKey);
VGAGet();
+ pScrn->LeaveVT = pScreenPriv->LeaveVT;
(*pScreenPriv->LeaveVT)(index, flags);
+ pScreenPriv->LeaveVT = pScrn->LeaveVT;
+ pScrn->LeaveVT = VGAarbiterLeaveVT;
VGAPut();
}