git » polkit-qt.git » commit 54074c4

upgpkg: 0.96.1-1

author Andrea Scarpino
2010-10-09 10:54:23 UTC
committer Andrea Scarpino
2010-10-09 10:54:23 UTC
parent af5ac718918be901d1fa59d6be890eeaefb8b857

upgpkg: 0.96.1-1

upstream release; new source URL and fixes segfault when logout/shutdown from KDE (FS#21101)

PKGBUILD +15 -8
fix-deprecated-warnings.patch +41 -0
null-checking.patch +14 -0

diff --git a/PKGBUILD b/PKGBUILD
index 5453f52..c6acc36 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: $
-# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+# Maintainer: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
 
 pkgname=polkit-qt
-pkgver=0.95.1
+pkgver=0.96.1
 pkgrel=1
 pkgdesc='A library that allows developers to access PolicyKit API with a nice Qt-style API'
 arch=('i686' 'x86_64')
@@ -10,18 +10,25 @@ url='http://www.kde.org'
 license=('LGPL')
 depends=('polkit' 'qt')
 makedepends=('cmake' 'automoc4')
-source=("ftp://ftp.kde.org/pub/kde/stable/${pkgname}-1/${pkgname}-1-${pkgver}.tar.bz2")
-md5sums=('b5c5017058ab0f3bc7eb337a7c66e0bc')
+source=("ftp://ftp.kde.org/pub/kde/stable/apps/KDE4.x/admin/${pkgname}-1-${pkgver}.tar.bz2"
+	'fix-deprecated-warnings.patch'
+	'null-checking.patch')
+md5sums=('7d122aa67c6786ea7d0bb023701693a1'
+         '2ff7e14cfa198eaca9189c15158adf37'
+         'a34dfa8408cf7add41dd2c9c522a61ce')
 
 build() {
+	cd ${srcdir}/${pkgname}-1-${pkgver}
+	patch -Np0 -i ${srcdir}/fix-deprecated-warnings.patch
+	patch -Np0 -i ${srcdir}/null-checking.patch
+
 	cd ${srcdir}
 	mkdir build
 	cd build
 	cmake ../${pkgname}-1-${pkgver} \
 		-DCMAKE_BUILD_TYPE=Release \
-		-DCMAKE_INSTALL_PREFIX=/usr \
-		-DCMAKE_SKIP_RPATH=ON
-	make || return 1
+		-DCMAKE_INSTALL_PREFIX=/usr
+	make
 }
 
 package() {
diff --git a/fix-deprecated-warnings.patch b/fix-deprecated-warnings.patch
new file mode 100644
index 0000000..fa136b0
--- /dev/null
+++ b/fix-deprecated-warnings.patch
@@ -0,0 +1,41 @@
+Index: core/polkitqt1-authority.cpp
+===================================================================
+--- core/polkitqt1-authority.cpp	(revision 1183413)
++++ core/polkitqt1-authority.cpp	(working copy)
+@@ -177,12 +177,17 @@
+     m_revokeTemporaryAuthorizationsCancellable = g_cancellable_new();
+     m_revokeTemporaryAuthorizationCancellable = g_cancellable_new();
+ 
++    GError *gerror = NULL;
+     if (pkAuthority == NULL) {
+-        pkAuthority = polkit_authority_get();
++        pkAuthority = polkit_authority_get_sync(NULL, &gerror);
++        if (gerror != NULL) {
++            setError(E_GetAuthority, gerror->message);
++            g_error_free(gerror);
++            return;
++        }
+     }
+ 
+     if (pkAuthority == NULL) {
+-        (E_GetAuthority);
+         return;
+     }
+ 
+Index: agent/polkitqt1-agent-listener.cpp
+===================================================================
+--- agent/polkitqt1-agent-listener.cpp	(revision 1183413)
++++ agent/polkitqt1-agent-listener.cpp	(working copy)
+@@ -73,9 +73,11 @@
+ {
+     GError *error = NULL;
+ 
+-    bool r = polkit_agent_register_listener(d->listener,
++    bool r = polkit_agent_listener_register(d->listener,
++                                            POLKIT_AGENT_REGISTER_FLAGS_RUN_IN_THREAD,
+                                             subject->subject(),
+                                             objectPath.toAscii().data(),
++                                            NULL,
+                                             &error);
+     if (error != NULL) {
+         qWarning() << QString("Cannot register authentication agent: %1").arg(error->message);
diff --git a/null-checking.patch b/null-checking.patch
new file mode 100644
index 0000000..0ec2a8e
--- /dev/null
+++ b/null-checking.patch
@@ -0,0 +1,14 @@
+Index: agent/polkitqt1-agent-listener.cpp
+===================================================================
+--- agent/polkitqt1-agent-listener.cpp	(revision 1183495)
++++ agent/polkitqt1-agent-listener.cpp	(working copy)
+@@ -66,7 +66,8 @@
+     qDebug("Destroying listener");
+ 
+     ListenerAdapter::instance()->removeListener(this);
+-    g_object_unref(d->listener);
++    if (d->listener != NULL)
++        g_object_unref(d->listener);
+ }
+ 
+ bool Listener::registerListener(PolkitQt1::Subject *subject, const QString &objectPath)