diff options
author | marha <marha@users.sourceforge.net> | 2009-09-02 19:53:35 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-09-02 19:53:35 +0000 |
commit | 6f25a23db1df27e992c34f6fd4c82e83c44fc2e2 (patch) | |
tree | a49e113cbab862b959559a047afef689df50e492 /xorg-server/hw/xfree86/modes/xf86Rotate.c | |
parent | 78b8aacf420184834a24f11d138b88c2f3ed09d1 (diff) | |
download | vcxsrv-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.c | 7 |
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; |