diff --git a/xorg-x11-server.spec b/xorg-x11-server.spec index d4d41ac..06b2ba6 100644 --- a/xorg-x11-server.spec +++ b/xorg-x11-server.spec @@ -20,7 +20,7 @@ Summary: X.Org X11 X server Name: xorg-x11-server Version: 1.4.99.902 -Release: 2.%{gitdate}%{?dist} +Release: 3.%{gitdate}%{?dist} URL: http://www.x.org License: MIT Group: User Interface/X @@ -60,6 +60,7 @@ Patch5002: xserver-1.4.99-ssh-isnt-local.patch Patch5007: xserver-1.5.0-bad-fbdev-thats-mine.patch Patch5008: xserver-1.5.0-xaa-sucks.patch Patch5009: xserver-1.5.0-no-evdev-keyboards-kthnx.patch +Patch5010: xserver-1.5.0-fix-single-aspect.patch %define moduledir %{_libdir}/xorg/modules %define drimoduledir %{_libdir}/dri @@ -510,6 +511,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Jun 12 2008 Dave Airlie 1.4.99.902-3.20080612 +- xserver-1.5.0-fix-single-aspect.patch - fix 2560x1600 on my monitor. + * Thu Jun 12 2008 Dave Airlie 1.4.99.902-2.20080612 - cve-2008-1377: Record and Security Extension Input validation - cve-2008-1379: MIT-SHM extension Input Validation flaw diff --git a/xserver-1.5.0-fix-single-aspect.patch b/xserver-1.5.0-fix-single-aspect.patch new file mode 100644 index 0000000..afd1c21 --- /dev/null +++ b/xserver-1.5.0-fix-single-aspect.patch @@ -0,0 +1,28 @@ +From 21248705bbd9876ea6d2d78a85bedc4904c63899 Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Thu, 12 Jun 2008 14:54:56 +1000 +Subject: [PATCH] modes: make aspect choosing work on single output case. + +In the single output enabled case we never enter the loop and test +never gets set and so we fail to match a good mode. + +This was causing my 2560x1600 to end up at 2048x1536. +--- + hw/xfree86/modes/xf86Crtc.c | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index 855d646..02c447d 100644 +--- a/hw/xfree86/modes/xf86Crtc.c ++++ b/hw/xfree86/modes/xf86Crtc.c +@@ -1854,6 +1854,7 @@ bestModeForAspect(xf86CrtcConfigPtr config, Bool *enabled, float aspect) + + nextEnabledOutput(config, enabled, &o); + while ((mode = nextAspectMode(config->output[o], mode, aspect))) { ++ test = mode; + for (p = o; nextEnabledOutput(config, enabled, &p); ) { + test = xf86OutputFindClosestMode(config->output[p], mode); + if (!test) +-- +1.5.5.1 +