From ddba9670c1518d9b420db6a6dca01a4a4a4136c7 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 8 Nov 2011 23:14:49 +0000 Subject: Tue Nov 8 23:14:49 UTC 2011 --- extra/allegro/PKGBUILD | 8 +- extra/clutter/PKGBUILD | 17 +-- extra/conky/PKGBUILD | 8 +- extra/empathy/PKGBUILD | 6 +- extra/gnome-documents/PKGBUILD | 8 +- extra/gtk-sharp-2/PKGBUILD | 23 ++-- extra/libdatrie/PKGBUILD | 12 +- extra/libthai/PKGBUILD | 12 +- extra/ristretto/PKGBUILD | 8 +- extra/xf86-video-sisimedia/PKGBUILD | 7 +- extra/xf86-video-sisimedia/fix-xv-crash.patch | 11 ++ extra/xorg-server/PKGBUILD | 24 ++-- extra/xorg-server/git-fixes.patch | 159 ++++++++++++++++++-------- 13 files changed, 196 insertions(+), 107 deletions(-) create mode 100644 extra/xf86-video-sisimedia/fix-xv-crash.patch (limited to 'extra') diff --git a/extra/allegro/PKGBUILD b/extra/allegro/PKGBUILD index dfded5632..9903edb53 100644 --- a/extra/allegro/PKGBUILD +++ b/extra/allegro/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 141200 2011-10-25 22:29:00Z eric $ +# $Id: PKGBUILD 142269 2011-11-07 18:27:05Z eric $ # Maintainer: Ionut Biru # Contributor: Tom Newsom # Contributor: arjan pkgname=allegro -pkgver=5.0.4 -pkgrel=2 +pkgver=5.0.5 +pkgrel=1 pkgdesc="Portable library mainly aimed at video game and multimedia programming" arch=('i686' 'x86_64') url="http://alleg.sourceforge.net/" @@ -13,7 +13,7 @@ license=('custom') depends=('jack' 'libxpm' 'libxxf86vm' 'libxxf86dga' 'libxcursor' 'libpng' 'libgl' 'libjpeg') makedepends=('cmake' 'mesa' 'freetype2') source=(http://downloads.sourceforge.net/alleg/${pkgname}-${pkgver}.tar.gz) -md5sums=('e2e314ee7116c7efddd0497d6c885e46') +md5sums=('4d879afe7062f7dc9b8913cba2e44bdf') build() { cd "${srcdir}" diff --git a/extra/clutter/PKGBUILD b/extra/clutter/PKGBUILD index 66ff38ae1..c8d527923 100644 --- a/extra/clutter/PKGBUILD +++ b/extra/clutter/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 140847 2011-10-20 05:41:50Z ibiru $ +# $Id: PKGBUILD 142273 2011-11-07 19:57:07Z ibiru $ # Maintainer: Jan de Groot # Contributor: Sergej Pupykin # Contributor: William Rea pkgname=clutter pkgver=1.8.2 -pkgrel=1 +pkgrel=2 pkgdesc="A GObject based library for creating fast, visually rich graphical user interfaces" arch=('i686' 'x86_64') url="http://clutter-project.org/" @@ -13,16 +13,19 @@ options=('!libtool') license=('LGPL') depends=('cogl>=1.8.0' 'mesa' 'json-glib' 'atk' 'libxi') makedepends=('gobject-introspection' 'mesa') -source=(http://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz) -sha256sums=('dc899f26448f31cb31e72d80650b8c8ae05acacd5b5d5a44798eabaca0ddfa2f') +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz + fallback.patch::http://git.gnome.org/browse/clutter/patch/?id=f05432d57e5e980d0841fd6c13a7f886a46107fe) +sha256sums=('dc899f26448f31cb31e72d80650b8c8ae05acacd5b5d5a44798eabaca0ddfa2f' + '30c3c1dfdf1c74e8a7dc2cc6eac305127b7441504cb7040b7cf8d46a4b67fdd9') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "$srcdir/$pkgname-$pkgver" + patch -Np1 -i $srcdir/fallback.patch ./configure --prefix=/usr --enable-introspection make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install } diff --git a/extra/conky/PKGBUILD b/extra/conky/PKGBUILD index f81d854d0..543348b26 100644 --- a/extra/conky/PKGBUILD +++ b/extra/conky/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 141204 2011-10-26 00:39:40Z bisson $ +# $Id: PKGBUILD 142242 2011-11-07 05:35:59Z bisson $ # Contributor: Giovanni Scafora # Contributor: James Rayner # Contributor: Partha Chowdhury # Maintainer: Gaetan Bisson pkgname=conky -pkgver=1.8.2git20111026 +pkgver=1.8.2git20111107 pkgrel=1 pkgdesc='Lightweight system monitor for X' url='http://conky.sourceforge.net/' @@ -16,7 +16,7 @@ makedepends=('pkg-config' 'docbook2x') depends=('alsa-lib' 'libxml2' 'curl' 'wireless_tools' 'libxft' 'glib2' 'libxdamage' 'imlib2') backup=('etc/conky/conky.conf' 'etc/conky/conky_no_x11.conf') source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz") -sha1sums=('735861b284ad4feb86a9febaf4e457a4fcc7b39b') +sha1sums=('133fc6fdc725162af9a98c72c1b7349efc22447c') # git clone git://git.omp.am/conky.git; cd conky; git archive --prefix=${pkgname}-${pkgver}/ origin/1.8.2 | xz > ../${pkgname}-${pkgver}.tar.xz @@ -27,7 +27,7 @@ build() { sh autogen.sh - CPPFLAGS="$CXXFLAGS" LIBS="$LDFLAGS" ./configure \ + CPPFLAGS="${CXXFLAGS}" LIBS="${LDFLAGS}" ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --enable-ibm \ diff --git a/extra/empathy/PKGBUILD b/extra/empathy/PKGBUILD index 5e4cc8fc1..861879622 100644 --- a/extra/empathy/PKGBUILD +++ b/extra/empathy/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 141134 2011-10-24 16:36:03Z ibiru $ +# $Id: PKGBUILD 142286 2011-11-07 20:59:23Z ibiru $ # Maintainer: Ionut Biru pkgname=empathy -pkgver=3.2.1.1 +pkgver=3.2.1.2 pkgrel=1 pkgdesc="A GNOME instant messaging client using the Telepathy framework." arch=('i686' 'x86_64') @@ -21,7 +21,7 @@ options=('!libtool') groups=('gnome-extra') install=empathy.install source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.2/${pkgname}-${pkgver}.tar.xz) -sha256sums=('2b4ce3184fcd8c2260654f925e4055a7e02513c5eefa4745bcdf82c9039b7681') +sha256sums=('44e149ecadce6269a6d31d93bbd7d4a4bda8d092d4e95de9d5ca09cf067d8ab7') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/gnome-documents/PKGBUILD b/extra/gnome-documents/PKGBUILD index 94d5475bc..6865f4fdc 100644 --- a/extra/gnome-documents/PKGBUILD +++ b/extra/gnome-documents/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 140891 2011-10-20 05:42:38Z ibiru $ +# $Id: PKGBUILD 142279 2011-11-07 20:29:49Z ibiru $ # Maintainer: Jan "heftig" Steffens pkgname=gnome-documents pkgver=0.2.1 -pkgrel=1 +pkgrel=2 pkgdesc="Documents Manager for GNOME" arch=(i686 x86_64) url="http://www.gnome.org" license=('GPL') groups=('gnome-extra') -depends=('clutter-gtk' 'evince' 'gobject-introspection' 'gtk3' 'gnome-desktop' 'gnome-online-accounts' 'libgdata' 'tracker') -makedepends=('intltool' 'vala') +depends=('clutter-gtk' 'evince' 'gjs' 'gtk3' 'gnome-desktop' 'gnome-online-accounts' 'libgdata' 'tracker') +makedepends=('intltool') optdepends=('unoconv: Support for Libreoffice document types') options=('!libtool') install=gnome-documents.install diff --git a/extra/gtk-sharp-2/PKGBUILD b/extra/gtk-sharp-2/PKGBUILD index 8b8e86e0b..7adbebf17 100644 --- a/extra/gtk-sharp-2/PKGBUILD +++ b/extra/gtk-sharp-2/PKGBUILD @@ -1,28 +1,31 @@ -# $Id: PKGBUILD 72892 2010-03-21 15:11:50Z ibiru $ +# $Id: PKGBUILD 142257 2011-11-07 12:49:15Z jgc $ # Maintainer: tobias pkgname=gtk-sharp-2 -pkgver=2.12.10 +pkgver=2.12.11 pkgrel=1 pkgdesc="gtk2 bindings for C#" arch=(i686 x86_64) license=('LGPL') url="http://gtk-sharp.sourceforge.net" -depends=('mono>=2.4' 'libglade>=2.6.4' 'gtk2>=2.18.0') +depends=('mono' 'libglade' 'gtk2') makedepends=('pkgconfig' 'monodoc') conflicts=('gtk#') options=('!libtool' '!makeflags') -source=(http://ftp.gnome.org/pub/GNOME/sources/gtk-sharp/2.12/gtk-sharp-${pkgver}.tar.bz2) -sha256sums=('aaa53f7916f25f0f83760b6ffbf0d465d13ecfa55aa645603f1ca876b7d0f770') +source=(http://download.mono-project.com/sources/gtk-sharp212/gtk-sharp-${pkgver}.tar.bz2) +md5sums=('c278da6a472c6c13b698af012f543c64') build() { # get rid of that .wapi errors; thanks to brice - export MONO_SHARED_DIR="${srcdir}/weird" + export MONO_SHARED_DIR="${srcdir}/wapi" mkdir -p "${MONO_SHARED_DIR}" cd "${srcdir}/gtk-sharp-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --disable-static || return 1 - make || return 1 - make GACUTIL="/usr/bin/gacutil /root ${pkgdir}/usr/lib" \ - DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr --sysconfdir=/etc --disable-static + make +} + +package() { + cd "${srcdir}/gtk-sharp-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/extra/libdatrie/PKGBUILD b/extra/libdatrie/PKGBUILD index 68ac77c7f..21eca6bfb 100644 --- a/extra/libdatrie/PKGBUILD +++ b/extra/libdatrie/PKGBUILD @@ -1,22 +1,26 @@ -# $Id: PKGBUILD 87837 2010-08-18 12:55:23Z jgc $ +# $Id: PKGBUILD 142248 2011-11-07 09:16:13Z jgc $ # Maintainer: Jan de Groot # Contributor: Chaiwat Suttipongsakul pkgname=libdatrie -pkgver=0.2.4 +pkgver=0.2.5 pkgrel=1 pkgdesc="Implementation of double-array structure for representing trie, as proposed by Junichi Aoe." -url="http://linux.thai.net/~thep/datrie/datrie.html" +url="http://linux.thai.net/projects/datrie" license=('LGPL') arch=('i686' 'x86_64') depends=('glibc') options=('!libtool' '!emptydirs') source=(http://linux.thai.net/pub/thailinux/software/libthai/${pkgname}-${pkgver}.tar.gz) -md5sums=('7f7d592114f98db9e4c7171c3f2befc5') +md5sums=('c9b057d07198d66e1ac2eff32937d3d4') build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr --disable-static make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/extra/libthai/PKGBUILD b/extra/libthai/PKGBUILD index 818b8611e..f61136bb1 100644 --- a/extra/libthai/PKGBUILD +++ b/extra/libthai/PKGBUILD @@ -1,23 +1,27 @@ -# $Id: PKGBUILD 118469 2011-04-07 08:07:24Z jgc $ +# $Id: PKGBUILD 142250 2011-11-07 09:20:43Z jgc $ # Maintainer: Jan de Groot # Contributor: Chaiwat Suttipongsakul pkgname=libthai -pkgver=0.1.15 +pkgver=0.1.16 pkgrel=1 pkgdesc="Thai language support routines" url="http://linux.thai.net/projects/libthai" arch=('i686' 'x86_64') license=('LGPL') -depends=('libdatrie>=0.2.3') +depends=('libdatrie') makedepends=('pkgconfig') options=('!libtool' '!emptydirs') source=(http://linux.thai.net/pub/thailinux/software/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('3bc6d925eae36317aac8676be49a5741') +md5sums=('631ae09f531db6c94aedcc7ce226d6a5') build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr --disable-static make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/extra/ristretto/PKGBUILD b/extra/ristretto/PKGBUILD index 558a3ed1a..bd8338961 100644 --- a/extra/ristretto/PKGBUILD +++ b/extra/ristretto/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 141238 2011-10-27 04:35:26Z eric $ +# $Id: PKGBUILD 142271 2011-11-07 18:53:02Z eric $ # Maintainer: AndyRTR # Contributor: Ronald van Haren pkgname=ristretto -pkgver=0.2.1 +pkgver=0.2.3 pkgrel=1 pkgdesc="An image viewer for Xfce" arch=('i686' 'x86_64') @@ -14,8 +14,8 @@ makedepends=('intltool') options=('!libtool') groups=('xfce4-goodies') install=ristretto.install -source=(http://archive.xfce.org/src/apps/$pkgname/0.2/$pkgname-$pkgver.tar.bz2) -md5sums=('df5c2082013f4ad2fc49cd7c25965741') +source=(http://archive.xfce.org/src/apps/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2) +md5sums=('62924c8abf17a921262ea9987ff8f5db') build() { cd "${srcdir}/$pkgname-$pkgver" diff --git a/extra/xf86-video-sisimedia/PKGBUILD b/extra/xf86-video-sisimedia/PKGBUILD index edf4ef0bb..b1d9e01d6 100644 --- a/extra/xf86-video-sisimedia/PKGBUILD +++ b/extra/xf86-video-sisimedia/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 140378 2011-10-11 21:33:02Z jgc $ +# $Id: PKGBUILD 142261 2011-11-07 13:08:57Z jgc $ # Maintainer: Jan de Groot pkgname=xf86-video-sisimedia pkgver=0.9.1 -pkgrel=1 +pkgrel=2 pkgdesc="X.org SiS 671 video driver" arch=(i686 x86_64) url="http://www.linuxconsulting.ro/xorg-drivers/" @@ -28,6 +28,7 @@ source=(ftp://ftp.archlinux.org/other/xf86-video-sisimedia/xf86-video-sisimedia- 0004-Make-sisRegs3D4-big-enough-to-hold-all-values-writte.patch 0005-Correct-bounds-check-of-blitClip-array-access.patch xserver19.patch + fix-xv-crash.patch COPYING) sha1sums=('22e6616df49ec82755daae08043a29aaf92fa430' '61715bb86180decde55a56fad9a12d841c89fbb2' @@ -45,6 +46,7 @@ sha1sums=('22e6616df49ec82755daae08043a29aaf92fa430' '5e288526bfa2c534f1feabdb571da16da8a1c7a6' 'e86d702cb0b5e9bf43ff732696229965e176db7c' 'b5f260bed7e705808ec05620316e503ed5d52ee5' + '1fdd74a2aef9455ac5c37d1fe0146d81aa905d2d' 'a64e244f274bcb155f892d0488a1a4b1b2f7d70d') build() { @@ -64,6 +66,7 @@ build() { patch -Np1 -i "${srcdir}/0004-Make-sisRegs3D4-big-enough-to-hold-all-values-writte.patch" patch -Np1 -i "${srcdir}/0005-Correct-bounds-check-of-blitClip-array-access.patch" patch -Np1 -i "${srcdir}/xserver19.patch" + patch -Np0 -i "${srcdir}/fix-xv-crash.patch" sed -i -e 's,sis_drv,sisimedia_drv,g' src/Makefile.am sed -i -e 's,\"sis\",\"sisimedia\",g' src/sis.h diff --git a/extra/xf86-video-sisimedia/fix-xv-crash.patch b/extra/xf86-video-sisimedia/fix-xv-crash.patch new file mode 100644 index 000000000..57e6adec5 --- /dev/null +++ b/extra/xf86-video-sisimedia/fix-xv-crash.patch @@ -0,0 +1,11 @@ +--- src/sis_video.c 2008-10-01 09:44:01.000000000 +0200 ++++ src/sis_video.c.new 2011-10-17 14:23:07.000000000 +0200 +@@ -1121,7 +1121,7 @@ + adapt->GetPortAttribute = SISGetPortAttribute; + adapt->QueryBestSize = SISQueryBestSize; + adapt->PutImage = SISPutImage; +- adapt->ReputImage = SISReputImage; ++ adapt->ReputImage = NULL; + adapt->QueryImageAttributes = SISQueryImageAttributes; + + /* gotta uninit this someplace */ diff --git a/extra/xorg-server/PKGBUILD b/extra/xorg-server/PKGBUILD index 48f500bb4..7145bb168 100644 --- a/extra/xorg-server/PKGBUILD +++ b/extra/xorg-server/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 141677 2011-11-02 06:41:51Z andyrtr $ +# $Id: PKGBUILD 142252 2011-11-07 09:31:56Z andyrtr $ # Maintainer: Jan de Groot pkgbase=xorg-server pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel') -pkgver=1.11.1.902 +pkgver=1.11.2 pkgrel=1 arch=('i686' 'x86_64') license=('custom') @@ -14,18 +14,18 @@ source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2 autoconfig-nvidia.patch autoconfig-sis.patch revert-trapezoids.patch - #git-fixes.patch + git-fixes.patch xvfb-run xvfb-run.1 10-quirks.conf) -sha1sums=('235a5d77420df21c8a8eed34e196168bafdbb02b' - '0249b892f27243d8fe6fe6d226bf4c2391cedf49' - '962fecc159c128728f14e8ba231c5b00391ff4ac' - 'd9f7d9553e772c2682c15079019d30c658a4f83b' - #'cd9291fe1fa1b497aa74675afeeb025fe6b23b95' - 'c94f742d3f9cabf958ae58e4015d9dd185aabedc' - '6838fc00ef4618c924a77e0fb03c05346080908a' - '993798f3d22ad672d769dae5f48d1fa068d5578f') +md5sums=('8796fff441e5435ee36a72579008af24' + '6c7e87d63ac4b535e19a80c89d0cf091' + 'f8194638ca4872c2b0a67862a70bcebf' + 'f6c84f4936f8e00abdfbd9fb4eda83fb' + 'b9cdb3855cc2b2e974a98b9a20d1ec2b' + '52fd3effd80d7bc6c1660d4ecf23d31c' + '376c70308715cd2643f7bff936d9934b' + 'd4f7dfc6be4ef4e2c6dd7632a9d88abe') build() { cd "${srcdir}/${pkgbase}-${pkgver}" @@ -40,7 +40,7 @@ build() { patch -Np1 -i "${srcdir}/revert-trapezoids.patch" # Add post-release patches from 1.11 branch - #patch -Np1 -i "${srcdir}/git-fixes.patch" + patch -Np1 -i "${srcdir}/git-fixes.patch" autoreconf -fi ./configure --prefix=/usr \ diff --git a/extra/xorg-server/git-fixes.patch b/extra/xorg-server/git-fixes.patch index a62524bdb..9629b3040 100644 --- a/extra/xorg-server/git-fixes.patch +++ b/extra/xorg-server/git-fixes.patch @@ -1,56 +1,117 @@ -From f80d23357874db19bc124dee70239fb182977883 Mon Sep 17 00:00:00 2001 -From: Matthieu Herrb -Date: Mon, 17 Oct 2011 20:26:12 +0000 -Subject: Fix CVE-2011-4028: File disclosure vulnerability. - -use O_NOFOLLOW to open the existing lock file, so symbolic links -aren't followed, thus avoid revealing if it point to an existing -file. - -Signed-off-by: Matthieu Herrb -Reviewed-by: Alan Coopersmith -(cherry picked from commit 6ba44b91e37622ef8c146d8f2ac92d708a18ed34) +From 89626304ea1ad316c5b7145a40f09377148cff21 Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Thu, 20 Oct 2011 13:43:01 +0000 +Subject: xf86Crtc: handle no outputs with no modes harder. + +If you started an X server with no connected outputs, we pick a default +1024x768 mode, however if you then ran an xvidmode using app against that +server it would segfault the server due to not finding any valid modes. + +This was due to the no output mode set code, only adding the modes to the +scrn->modes once, when something called randr 1.2 xf86SetScrnInfoModes would +get called and remove all the modes and we'd end up with 0. + +This change fixes xf86SetScrnInfoModes to always report a scrn mode of at +least 1024x768, and pushes the initial configuration to just call it instead +of setting up the mode itself. + +Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=746926 + +I've seen other bugs like this on other distros so it might also actually fix them. + +Signed-off-by: Dave Airlie +Reviewed-by: Keith Packard +Signed-off-by: Keith Packard +(cherry picked from commit 17416e88dcfcc584fe5f87580d5d2b719b3521c3) --- -diff --git a/os/utils.c b/os/utils.c -index 36cb46f..9e0acb6 100644 ---- a/os/utils.c -+++ b/os/utils.c -@@ -316,7 +316,7 @@ LockServer(void) - /* - * Read the pid from the existing file - */ -- lfd = open(LockFile, O_RDONLY); -+ lfd = open(LockFile, O_RDONLY|O_NOFOLLOW); - if (lfd < 0) { - unlink(tmp); - FatalError("Can't read lock file %s\n", LockFile); +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index d75cd77..8906806 100644 +--- a/hw/xfree86/modes/xf86Crtc.c ++++ b/hw/xfree86/modes/xf86Crtc.c +@@ -1915,19 +1915,25 @@ xf86SetScrnInfoModes (ScrnInfoPtr scrn) + break; + } + +- if (scrn->modes != NULL) { +- /* For some reason, scrn->modes is circular, unlike the other mode +- * lists. How great is that? +- */ +- for (last = scrn->modes; last && last->next; last = last->next) +- ; +- last->next = scrn->modes; +- scrn->modes->prev = last; +- if (mode) { +- while (scrn->modes != mode) +- scrn->modes = scrn->modes->next; +- } ++ if (!scrn->modes) { ++ scrn->modes = xf86ModesAdd(scrn->modes, ++ xf86CVTMode(scrn->display->virtualX, ++ scrn->display->virtualY, ++ 60, 0, 0)); ++ } ++ ++ /* For some reason, scrn->modes is circular, unlike the other mode ++ * lists. How great is that? ++ */ ++ for (last = scrn->modes; last && last->next; last = last->next) ++ ; ++ last->next = scrn->modes; ++ scrn->modes->prev = last; ++ if (mode) { ++ while (scrn->modes != mode) ++ scrn->modes = scrn->modes->next; + } ++ + scrn->currentMode = scrn->modes; + #ifdef XFreeXDGA + if (scrn->pScreen) +@@ -2529,16 +2535,7 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow) + width, height); + } + +- if (have_outputs) { +- /* Mirror output modes to scrn mode list */ +- xf86SetScrnInfoModes (scrn); +- } else { +- /* Clear any existing modes from scrn->modes */ +- while (scrn->modes != NULL) +- xf86DeleteMode(&scrn->modes, scrn->modes); +- scrn->modes = xf86ModesAdd(scrn->modes, +- xf86CVTMode(width, height, 60, 0, 0)); +- } ++ xf86SetScrnInfoModes (scrn); + + success = TRUE; + bailout: -- cgit v0.9.0.2-2-gbebe -From 12f65819ffb04103f170ecd7e281348de618fc4c Mon Sep 17 00:00:00 2001 -From: Matthieu Herrb -Date: Mon, 17 Oct 2011 20:27:35 +0000 -Subject: Fix CVE-2011-4029: File permission change vulnerability. - -Use fchmod() to change permissions of the lock file instead -of chmod(), thus avoid the race that can be exploited to set -a symbolic link to any file or directory in the system. - -Signed-off-by: Matthieu Herrb -Reviewed-by: Alan Coopersmith -(cherry picked from commit b67581cf825940fdf52bf2e0af4330e695d724a4) +From 97f2ae60fc0cc755abd8b88df826fcb1a20464fe Mon Sep 17 00:00:00 2001 +From: Christopher Yeleighton +Date: Tue, 25 Oct 2011 01:47:06 +0000 +Subject: Bug 38420: Xvfb crashes in miInitVisuals() when started with depth=2 + +https://bugs.freedesktop.org/show_bug.cgi?id=38420 + +Exit with fatal error message, not segfault. + +Signed-off-by: Alan Coopersmith +Reviewed-by: Jeremy Huddleston +Signed-off-by: Keith Packard +(cherry picked from commit 7d50211ab57a35910d79fc3f67ae89aff91fa995) --- -diff --git a/os/utils.c b/os/utils.c -index 9e0acb6..d9aa65e 100644 ---- a/os/utils.c -+++ b/os/utils.c -@@ -295,7 +295,7 @@ LockServer(void) - FatalError("Could not create lock file in %s\n", tmp); - (void) sprintf(pid_str, "%10ld\n", (long)getpid()); - (void) write(lfd, pid_str, 11); -- (void) chmod(tmp, 0444); -+ (void) fchmod(lfd, 0444); - (void) close(lfd); +diff --git a/hw/vfb/InitOutput.c b/hw/vfb/InitOutput.c +index 31ed505..dce3f84 100644 +--- a/hw/vfb/InitOutput.c ++++ b/hw/vfb/InitOutput.c +@@ -864,6 +864,8 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv) + (1 << DirectColor)), + 10, TrueColor, 0x3ff00000, 0x000ffc00, 0x000003ff); + break; ++ default: ++ return FALSE; + } - /* + miSetPixmapDepths (); -- cgit v0.9.0.2-2-gbebe -- cgit v1.2.3-54-g00ecf