summaryrefslogtreecommitdiff
authorKeith Packard <keithp@koto.keithp.com>2007-08-20 03:29:37 (GMT)
committer Keith Packard <keithp@koto.keithp.com>2007-08-21 06:24:22 (GMT)
commit265a633cf1fcbf497d6916d9e22403dffdde2e07 (patch) (side-by-side diff)
treeda201d57ec086249ea2bc18d0e76ffd71351c5df
parent7dc8531548cc9573e28bb04363dcbb3af5864c9a (diff)
downloadxserver-265a633cf1fcbf497d6916d9e22403dffdde2e07.zip
xserver-265a633cf1fcbf497d6916d9e22403dffdde2e07.tar.gz
Screen size changing should leave FB alone when X is inactive.
xf86RandR12ScreenSetSize must protect calls to EnableDisableFBAccess with suitable vtSema checks to avoid invoking driver code while the X server is inactive.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--hw/xfree86/modes/xf86RandR12.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
index 9d74e53..ae0a2ce 100644
--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
@@ -345,7 +345,7 @@ xf86RandR12ScreenSetSize (ScreenPtr pScreen,
randrp->virtualX = pScrn->virtualX;
randrp->virtualY = pScrn->virtualY;
}
- if (pRoot)
+ if (pRoot && pScrn->vtSema)
(*pScrn->EnableDisableFBAccess) (pScreen->myNum, FALSE);
/* Let the driver update virtualX and virtualY */
@@ -363,7 +363,7 @@ xf86RandR12ScreenSetSize (ScreenPtr pScreen,
xf86SetViewport (pScreen, 0, 0);
finish:
- if (pRoot)
+ if (pRoot && pScrn->vtSema)
(*pScrn->EnableDisableFBAccess) (pScreen->myNum, TRUE);
#if RANDR_12_INTERFACE
if (WindowTable[pScreen->myNum] && ret)