[arch-commits] Commit in folks/trunk (2 files)
Jan Steffens
heftig at archlinux.org
Tue Sep 13 21:31:42 UTC 2011
Date: Tuesday, September 13, 2011 @ 17:31:42
Author: heftig
Revision: 138000
wee, new stuff
Added:
folks/trunk/Bug_658631_crash_at_empathy_startup.patch
Modified:
folks/trunk/PKGBUILD
-------------------------------------------+
Bug_658631_crash_at_empathy_startup.patch | 41 ++++++++++++++++++++++++++++
PKGBUILD | 20 ++++++++++---
2 files changed, 56 insertions(+), 5 deletions(-)
Added: Bug_658631_crash_at_empathy_startup.patch
===================================================================
--- Bug_658631_crash_at_empathy_startup.patch (rev 0)
+++ Bug_658631_crash_at_empathy_startup.patch 2011-09-13 21:31:42 UTC (rev 138000)
@@ -0,0 +1,41 @@
+From 1f85f89051e63b05e271b418687c242a83e2f296 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <philip at tecnocode.co.uk>
+Date: Mon, 12 Sep 2011 22:09:10 +0000
+Subject: Bug 658631 — crash at empathy startup
+
+In the case that a persona is removed and the individual containing that
+persona is replaced by a different non-null individual which doesn't contain
+that persona (because it's been removed), we need to set the persona's
+individual pointer to null rather than the replacement individual.
+
+This stops us tripping the assertion in the setter for Persona.individual.
+
+Closes: bgo#658631
+---
+diff --git a/folks/individual.vala b/folks/individual.vala
+index 3b6c12b..59548ee 100644
+--- a/folks/individual.vala
++++ b/folks/individual.vala
+@@ -1510,7 +1510,19 @@ public class Folks.Individual : Object,
+ * aggregator's rewritten, it would be nice to fix this. */
+ if (persona.individual == this)
+ {
+- persona.individual = replacement_individual;
++ /* It may be the case that the persona's being removed from the
++ * individual (i.e. the replacement individual is non-null, but
++ * doesn't contain this persona). In this case, we need to set the
++ * persona's individual to null. */
++ if (replacement_individual != null &&
++ persona in replacement_individual.personas)
++ {
++ persona.individual = replacement_individual;
++ }
++ else
++ {
++ persona.individual = null;
++ }
+ }
+ }
+
+--
+cgit v0.9.0.2
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2011-09-13 21:30:22 UTC (rev 137999)
+++ PKGBUILD 2011-09-13 21:31:42 UTC (rev 138000)
@@ -2,20 +2,30 @@
# Maintainer: Ionut Biru <ibiru at archlinux.org>
pkgname=folks
pkgver=0.6.2.1
-pkgrel=1
+pkgrel=2
pkgdesc="Library to aggregates people into metacontacts "
arch=(i686 x86_64)
url="http://telepathy.freedesktop.org/wiki/Folks"
license=('LGPL2.1')
depends=('telepathy-glib' 'libgee' 'libxml2' 'evolution-data-server' 'libsocialweb')
-makedepends=('gobject-introspection' 'vala' 'intltool')
+makedepends=('gobject-introspection' 'vala' 'intltool' 'libtracker-sparql')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.6/${pkgname}-${pkgver}.tar.xz)
-sha256sums=('3eda79a71890b51b6f723067b61c32ef25e9041a9e188b483d7f23e3dcd328ee')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.6/${pkgname}-${pkgver}.tar.xz
+ Bug_658631_crash_at_empathy_startup.patch)
+sha256sums=('3eda79a71890b51b6f723067b61c32ef25e9041a9e188b483d7f23e3dcd328ee'
+ '4ef4caaab73e799fe31e7a93ba1f3f088e99f66600e644828bbcc4fb966c1196')
build() {
cd "$srcdir/$pkgname-$pkgver"
- ./configure --prefix=/usr
+
+ # Fix a crash
+ patch -Np1 -i "$srcdir/Bug_658631_crash_at_empathy_startup.patch"
+ find . -name '*.stamp' -delete
+
+ # Change tracker version
+ grep -lr sparql-0.10 . | xargs sed -i 's/sparql-0.10/sparql-0.12/g'
+
+ ./configure --prefix=/usr --enable-tracker-backend
make
}
More information about the arch-commits
mailing list