From 8867b1d4d0601b21618d44d015460739590ca01d Mon Sep 17 00:00:00 2001 From: root Date: Wed, 11 May 2011 22:34:26 +0000 Subject: Wed May 11 22:34:25 UTC 2011 --- extra/gnome-desktop/PKGBUILD | 13 +++++++++---- extra/gnome-desktop/randr-fix.patch | 26 ++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 extra/gnome-desktop/randr-fix.patch (limited to 'extra/gnome-desktop') diff --git a/extra/gnome-desktop/PKGBUILD b/extra/gnome-desktop/PKGBUILD index c393fcc30..78ff8869b 100644 --- a/extra/gnome-desktop/PKGBUILD +++ b/extra/gnome-desktop/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 120873 2011-04-26 21:57:00Z ibiru $ +# $Id: PKGBUILD 123357 2011-05-10 15:51:14Z ibiru $ # Maintainer: Jan de Groot pkgname=gnome-desktop pkgver=3.0.1 -pkgrel=1 +pkgrel=2 pkgdesc="Library with common API for various GNOME modules" arch=('i686' 'x86_64') license=('GPL' 'LGPL') @@ -12,11 +12,16 @@ makedepends=('gnome-doc-utils' 'intltool' 'gobject-introspection') url="http://www.gnome.org" groups=('gnome') options=('!libtool') -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('6d5e140a0d5f9bc131caff505bc4a2afa11e1839437f7fc3da73238b37a3f0a3') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2 + randr-fix.patch) +sha256sums=('6d5e140a0d5f9bc131caff505bc4a2afa11e1839437f7fc3da73238b37a3f0a3' + '815a36c39d07eea48cb836bf25389c7057605239cb30b425d6c98763aeee4b89') build() { cd "${srcdir}/${pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/randr-fix.patch" + ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --with-gnome-distributor="Arch Linux" \ diff --git a/extra/gnome-desktop/randr-fix.patch b/extra/gnome-desktop/randr-fix.patch new file mode 100644 index 000000000..c5d83ef2c --- /dev/null +++ b/extra/gnome-desktop/randr-fix.patch @@ -0,0 +1,26 @@ +From aa93854f2ba6b0f72f1bdff9699b5724a72c89c9 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Sun, 01 May 2011 00:48:03 +0000 +Subject: Don't fall over if RANDR is missing + +When RANDR is not present, the screen object never gets an info, +and since screen_info_free asserts, we must not call it unconditionally +in finalize. +This fixes https://bugzilla.gnome.org/show_bug.cgi?id=649053 +--- +diff --git a/libgnome-desktop/gnome-rr.c b/libgnome-desktop/gnome-rr.c +index 4a9d98e..eb3d735 100644 +--- a/libgnome-desktop/gnome-rr.c ++++ b/libgnome-desktop/gnome-rr.c +@@ -748,7 +748,8 @@ gnome_rr_screen_finalize (GObject *gobject) + + gdk_window_remove_filter (screen->priv->gdk_root, screen_on_event, screen); + +- screen_info_free (screen->priv->info); ++ if (screen->priv->info) ++ screen_info_free (screen->priv->info); + + G_OBJECT_CLASS (gnome_rr_screen_parent_class)->finalize (gobject); + } +-- +cgit v0.9 -- cgit v1.2.3-54-g00ecf