diff options
author | Stuart Bennett <sb476@cam.ac.uk> | 2008-10-20 21:47:07 +0100 |
---|---|---|
committer | Stuart Bennett <sb476@cam.ac.uk> | 2008-10-22 23:44:44 +0100 |
commit | 13739cf36893e8ab6d3d4911c76a45f0b8bd5f4c (patch) | |
tree | 1eff0193b15bda3ee915f6f8278d9abd25ef98f6 | |
parent | 98a4dcb112221fa66d82b87ef9229f5c443daf90 (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.c | 3 |
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; } |