summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Bennett <sb476@cam.ac.uk>2008-10-20 21:47:07 +0100
committerStuart Bennett <sb476@cam.ac.uk>2008-10-22 23:44:44 +0100
commit13739cf36893e8ab6d3d4911c76a45f0b8bd5f4c (patch)
tree1eff0193b15bda3ee915f6f8278d9abd25ef98f6
parent98a4dcb112221fa66d82b87ef9229f5c443daf90 (diff)
randr12: don't change virtualX/virtualY
all the things in the ddx that use virtual* (setting displayWidth, allocating the FB, EXA init etc) use the values present before this function is called these prior values are derived from any Virtual line in xorg.conf and are what we want to use setting virtual* to the crtc size here, rather than the desired Virtual size, breaks everything using them in ScreenInit on server regeneration as the rhd guys say: /* This is strange... if we set virtualX/virtualY like the intel driver * does, we limit ourself in the future to this maximum size. * The check for this is internally in RandR, no idea why the intel driver * actually works this way... * Even more curious: if we DON'T update virtual, everything seems to * work as expected... */ so I'll take that as precedent.
-rw-r--r--src/nv_driver.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 643d62b..788e3cc 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -957,9 +957,12 @@ static Bool NVPreInitDRI(ScrnInfoPtr pScrn)
static Bool
nv_xf86crtc_resize(ScrnInfoPtr pScrn, int width, int height)
{
+#if 0
+ do not change virtual* for now, as it breaks multihead server regeneration
xf86DrvMsg(pScrn->scrnIndex, X_INFO, "nv_xf86crtc_resize is called with %dx%d resolution.\n", width, height);
pScrn->virtualX = width;
pScrn->virtualY = height;
+#endif
return TRUE;
}