diff options
author | marha <marha@users.sourceforge.net> | 2010-07-14 06:40:19 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2010-07-14 06:40:19 +0000 |
commit | 865af20e32591176d03acf984d9b5788d5ebce21 (patch) | |
tree | d5e216fa6fa5cdbb83834cc38bd5b96fc41c97de /xorg-server/hw/xfree86/xaa/xaaInit.c | |
parent | 81124070f120ab658e094b64f6944d701b003a99 (diff) | |
download | vcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.tar.gz vcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.tar.bz2 vcxsrv-865af20e32591176d03acf984d9b5788d5ebce21.zip |
xserver libxcb git update 14/7/2010
Diffstat (limited to 'xorg-server/hw/xfree86/xaa/xaaInit.c')
-rw-r--r-- | xorg-server/hw/xfree86/xaa/xaaInit.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/xorg-server/hw/xfree86/xaa/xaaInit.c b/xorg-server/hw/xfree86/xaa/xaaInit.c index a4b235acf..ff1dd3d8b 100644 --- a/xorg-server/hw/xfree86/xaa/xaaInit.c +++ b/xorg-server/hw/xfree86/xaa/xaaInit.c @@ -508,16 +508,23 @@ XAAChangeWindowAttributes (WindowPtr pWin, unsigned long mask) static Bool
XAAEnterVT(int index, int flags)
{
+ ScrnInfoPtr pScrn = xf86Screens[index];
+ Bool ret;
ScreenPtr pScreen = screenInfo.screens[index];
XAAScreenPtr pScreenPriv =
(XAAScreenPtr)dixLookupPrivate(&pScreen->devPrivates, XAAScreenKey);
- return((*pScreenPriv->EnterVT)(index, flags));
+ pScrn->EnterVT = pScreenPriv->EnterVT;
+ ret = ((*pScreenPriv->EnterVT)(index, flags));
+ pScreenPriv->EnterVT = pScrn->EnterVT;
+ pScrn->EnterVT = XAAEnterVT;
+ return ret;
}
static void
XAALeaveVT(int index, int flags)
{
+ ScrnInfoPtr pScrn = xf86Screens[index];
ScreenPtr pScreen = screenInfo.screens[index];
XAAScreenPtr pScreenPriv =
(XAAScreenPtr)dixLookupPrivate(&pScreen->devPrivates, XAAScreenKey);
@@ -528,7 +535,10 @@ XAALeaveVT(int index, int flags) infoRec->NeedToSync = FALSE;
}
+ pScrn->LeaveVT = pScreenPriv->LeaveVT;
(*pScreenPriv->LeaveVT)(index, flags);
+ pScreenPriv->LeaveVT = pScrn->LeaveVT;
+ pScrn->LeaveVT = XAALeaveVT;
}
typedef struct {
|