diff options
author | Eric Anholt <anholt@FreeBSD.org> | 2006-07-10 17:16:18 -0700 |
---|---|---|
committer | Eric Anholt <anholt@FreeBSD.org> | 2006-07-10 17:16:18 -0700 |
commit | 23a0ee73bce12f9e0b881af420413aeec4c0517f (patch) | |
tree | f5354f76ef60edd0cae4711ae6ab6a61793634bb | |
parent | 48ba9273ddfb36d3525e19238b94b18c56667c4d (diff) |
Fix modelist with a configured monitor to not begin with all unvalidated modes.
-rw-r--r-- | src/i830_modes.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/i830_modes.c b/src/i830_modes.c index bb097b8c..e1d8570b 100644 --- a/src/i830_modes.c +++ b/src/i830_modes.c @@ -1,3 +1,4 @@ + #define DEBUG_VERB 2 /* * Copyright © 2002 David Dawes @@ -659,7 +660,6 @@ static MonPtr i830GetConfiguredMonitor(ScrnInfoPtr pScrn) { MonPtr mon; - DisplayModePtr userModes; mon = xnfcalloc(1, sizeof(*mon)); memcpy(mon, pScrn->monitor, sizeof(*mon)); @@ -671,15 +671,12 @@ i830GetConfiguredMonitor(ScrnInfoPtr pScrn) if (pScrn->monitor->model != NULL) mon->model = xnfstrdup(pScrn->monitor->model); - /* Add in VESA standard and user modelines, and do additional validation + /* Use VESA standard and user modelines, and do additional validation * on them beyond what pipe config will do (x/y/pitch, clocks, flags) */ - userModes = i830DuplicateModes(pScrn, pScrn->monitor->Modes); - i830xf86ValidateModesSync(pScrn, userModes, mon); - i830xf86PruneInvalidModes(pScrn, &userModes, FALSE); - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "prune 1\n"); - i830AppendModes(pScrn, &mon->Modes, userModes); - + mon->Modes = i830DuplicateModes(pScrn, pScrn->monitor->Modes); + i830xf86ValidateModesSync(pScrn, mon->Modes, mon); + i830xf86PruneInvalidModes(pScrn, &mon->Modes, TRUE); mon->Last = i830GetModeListTail(mon->Modes); return mon; |