diff options
author | marha <marha@users.sourceforge.net> | 2009-09-02 21:09:13 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-09-02 21:09:13 +0000 |
commit | 8fedf58693f42869528b41408ac4d6012839e973 (patch) | |
tree | 62a817bea7dfc71050292d302ba94f5e349c67a7 /xorg-server/hw/xfree86/modes/xf86Rotate.c | |
parent | ac14083f465166b298162a57fff0bad90e528fff (diff) | |
parent | 6f25a23db1df27e992c34f6fd4c82e83c44fc2e2 (diff) | |
download | vcxsrv-8fedf58693f42869528b41408ac4d6012839e973.tar.gz vcxsrv-8fedf58693f42869528b41408ac4d6012839e973.tar.bz2 vcxsrv-8fedf58693f42869528b41408ac4d6012839e973.zip |
svn merge https://vcxsrv.svn.sourceforge.net/svnroot/vcxsrv/branches/released .
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; |