aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/modes/xf86Rotate.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2009-09-02 19:53:35 +0000
committermarha <marha@users.sourceforge.net>2009-09-02 19:53:35 +0000
commit6f25a23db1df27e992c34f6fd4c82e83c44fc2e2 (patch)
treea49e113cbab862b959559a047afef689df50e492 /xorg-server/hw/xfree86/modes/xf86Rotate.c
parent78b8aacf420184834a24f11d138b88c2f3ed09d1 (diff)
downloadvcxsrv-6f25a23db1df27e992c34f6fd4c82e83c44fc2e2.tar.gz
vcxsrv-6f25a23db1df27e992c34f6fd4c82e83c44fc2e2.tar.bz2
vcxsrv-6f25a23db1df27e992c34f6fd4c82e83c44fc2e2.zip
Switched to xorg-server-1.6.3.901.tar.gz
Diffstat (limited to 'xorg-server/hw/xfree86/modes/xf86Rotate.c')
-rw-r--r--xorg-server/hw/xfree86/modes/xf86Rotate.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/xorg-server/hw/xfree86/modes/xf86Rotate.c b/xorg-server/hw/xfree86/modes/xf86Rotate.c
index 6be77d556..bb17df431 100644
--- a/xorg-server/hw/xfree86/modes/xf86Rotate.c
+++ b/xorg-server/hw/xfree86/modes/xf86Rotate.c
@@ -198,6 +198,7 @@ xf86RotatePrepare (ScreenPtr pScreen)
DamageRegister (&(*pScreen->GetScreenPixmap)(pScreen)->drawable,
xf86_config->rotation_damage);
xf86_config->rotation_damage_registered = TRUE;
+ EnableLimitedSchedulingLatency();
}
xf86CrtcDamageShadow (crtc);
@@ -263,11 +264,12 @@ xf86RotateBlockHandler(int screenNum, pointer blockData,
ScreenPtr pScreen = screenInfo.screens[screenNum];
ScrnInfoPtr pScrn = xf86Screens[screenNum];
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
+ Bool rotation_active;
+ rotation_active = xf86RotateRedisplay(pScreen);
pScreen->BlockHandler = xf86_config->BlockHandler;
(*pScreen->BlockHandler) (screenNum, blockData, pTimeout, pReadmask);
- if (xf86RotateRedisplay(pScreen))
- {
+ if (rotation_active) {
/* Re-wrap if rotation is still happening */
xf86_config->BlockHandler = pScreen->BlockHandler;
pScreen->BlockHandler = xf86RotateBlockHandler;
@@ -307,6 +309,7 @@ xf86RotateDestroy (xf86CrtcPtr crtc)
DamageUnregister (&(*pScreen->GetScreenPixmap)(pScreen)->drawable,
xf86_config->rotation_damage);
xf86_config->rotation_damage_registered = FALSE;
+ DisableLimitedSchedulingLatency();
}
DamageDestroy (xf86_config->rotation_damage);
xf86_config->rotation_damage = NULL;