Date: Tuesday, April 27, 2010 @ 14:34:47 Author: jgc Revision: 78648 upgpkg: libgnome-keyring 2.30.1-1 Update to 2.30.1
Modified: libgnome-keyring/trunk/PKGBUILD (contents, properties) Deleted: libgnome-keyring/trunk/fix_endless_loop.patch ------------------------+ PKGBUILD | 15 ++++++--------- fix_endless_loop.patch | 46 ---------------------------------------------- 2 files changed, 6 insertions(+), 55 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-04-27 18:27:53 UTC (rev 78647) +++ PKGBUILD 2010-04-27 18:34:47 UTC (rev 78648) @@ -1,24 +1,21 @@ -#$Id: $ +#$Id$ #Maintainer: Jan De Groot <[email protected]> pkgname=libgnome-keyring -pkgver=2.30.0 -pkgrel=2 +pkgver=2.30.1 +pkgrel=1 pkgdesc="GNOME keyring client library" arch=(i686 x86_64) license=('GPL' 'LGPL') -depends=('eggdbus' 'libgcrypt' 'gnome-keyring>=2.30.0') +depends=('eggdbus>=0.6' 'libgcrypt>=1.4.5' 'gnome-keyring>=2.30.1') makedepends=('intltool' 'pkgconfig' 'python') options=('!libtool' '!emptydirs') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2 - fix_endless_loop.patch) -sha256sums=('11e64445537a8fab367875d1ae4aa00db9227c4db384c5d019cfa85c977b40ec' - '6e53216a8fae3e4c4888a44ff14e80fe540b9f21ef3276976cc78928d99cf9b7') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('a9227da7d3eee930b75ad7858875344b713d1bf73e6af54870a2691643d5dae4') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/fix_endless_loop.patch" || return 1 ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --libexecdir=/usr/lib/gnome-keyring || return 1 Property changes on: libgnome-keyring/trunk/PKGBUILD ___________________________________________________________________ Added: svn:keywords + Id Revision Deleted: fix_endless_loop.patch =================================================================== --- fix_endless_loop.patch 2010-04-27 18:27:53 UTC (rev 78647) +++ fix_endless_loop.patch 2010-04-27 18:34:47 UTC (rev 78648) @@ -1,46 +0,0 @@ -From 942ff4eae19732d9f5fd0d549385a7f2d9842444 Mon Sep 17 00:00:00 2001 -From: Stef Walter <[email protected]> -Date: Fri, 09 Apr 2010 18:39:38 +0000 -Subject: Workaround for problem with endless loop during blocking operations. - -Research done by Hiroyuki Ikezoe - -This is due to a bug in libdbus where the pending call is completed -without the relevant callback being called when used in certain -threading situations. - -Fixes bug #606902 ---- -diff --git a/library/gkr-operation.c b/library/gkr-operation.c -index 214ecc7..9f49e73 100644 ---- a/library/gkr-operation.c -+++ b/library/gkr-operation.c -@@ -363,13 +363,25 @@ gkr_operation_request (GkrOperation *op, DBusMessage *req) - GnomeKeyringResult - gkr_operation_block (GkrOperation *op) - { -+ DBusPendingCall *pending; - g_return_val_if_fail (op, BROKEN); - - gkr_operation_ref (op); - - while ((int) gkr_operation_get_result (op) == INCOMPLETE) { - if (op->pending) { -- dbus_pending_call_block (op->pending); -+ /* -+ * DBus has strange behavior that can complete a pending call -+ * in another thread and somehow does this without calling our -+ * on_pending_call_notify. So guard against this brokenness. -+ */ -+ pending = op->pending; -+ dbus_pending_call_block (pending); -+ if (op->pending == pending) { -+ g_return_val_if_fail (dbus_pending_call_get_completed (pending), BROKEN); -+ on_pending_call_notify (pending, op); -+ g_assert (op->pending != pending); -+ } - } else if (op->prompting) { - dbus_connection_flush (op->conn); - while (op->prompting && (int) gkr_operation_get_result (op) == INCOMPLETE) { --- -cgit v0.8.3.1
