summaryrefslogtreecommitdiff
path: root/extra/upower
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-10-17 01:14:24 -0700
committerroot <root@rshg054.dnsready.net>2013-10-17 01:14:24 -0700
commitc72dc5de577922ea7f6002cdabcfac1576eae211 (patch)
tree3b8c1ab907b1575184230eb1adc05e26e3a1b87a /extra/upower
parentc22d00d6478c9a00b4c7e491af65637537247c8f (diff)
Thu Oct 17 01:13:29 PDT 2013
Diffstat (limited to 'extra/upower')
-rw-r--r--extra/upower/PKGBUILD27
-rw-r--r--extra/upower/git-fixes.patch112
2 files changed, 127 insertions, 12 deletions
diff --git a/extra/upower/PKGBUILD b/extra/upower/PKGBUILD
index e135247b2..a3b18fe7f 100644
--- a/extra/upower/PKGBUILD
+++ b/extra/upower/PKGBUILD
@@ -1,31 +1,34 @@
-# $Id: PKGBUILD 185169 2013-05-11 16:16:34Z tomegun $
+# $Id: PKGBUILD 196663 2013-10-16 09:25:32Z jgc $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=upower
-pkgver=0.9.20
-pkgrel=2
+pkgver=0.9.22
+pkgrel=1
pkgdesc="Abstraction for enumerating power devices, listening to device events and querying history and statistics"
arch=('i686' 'x86_64')
url="http://upower.freedesktop.org"
license=('GPL')
-depends=('systemd-tools' 'libsystemd' 'libusb' 'polkit' 'pm-utils' 'dbus-glib' 'libimobiledevice')
+depends=('systemd-tools' 'libsystemd' 'libusb' 'polkit' 'dbus-glib' 'libimobiledevice')
makedepends=('intltool' 'docbook-xsl' 'gobject-introspection' 'systemd')
+backup=('etc/UPower/UPower.conf')
options=('!libtool')
-source=($url/releases/$pkgname-$pkgver.tar.xz)
-md5sums=('f175984d142dc8d2353a7da609836b69')
+source=($url/releases/$pkgname-$pkgver.tar.xz
+ git-fixes.patch)
+md5sums=('22b0b13c16ceb1516b5edf5cf0e99d6d'
+ 'd47377f5f8a02e38f81b6a63d8a19ef3')
+
+prepare() {
+ cd $pkgname-$pkgver
+ patch -Np1 -i ../git-fixes.patch
+}
build() {
cd "$pkgname-$pkgver"
- # put udev files in /usr/lib
- # should be dropped as of 0.9.21!!
- sed -i "/slashlibdir=/s#/lib#/usr/lib#" configure
-
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib/$pkgname \
- --disable-static \
- --enable-deprecated
+ --disable-static
make
}
diff --git a/extra/upower/git-fixes.patch b/extra/upower/git-fixes.patch
new file mode 100644
index 000000000..83c407454
--- /dev/null
+++ b/extra/upower/git-fixes.patch
@@ -0,0 +1,112 @@
+From e4858d94343bba2afbebcd1a4925c981a38a9579 Mon Sep 17 00:00:00 2001
+From: Bastien Nocera <hadess@hadess.net>
+Date: Thu, 10 Oct 2013 16:32:41 +0000
+Subject: up-client: Really don't overwrite retval with prop values
+
+db89e5a32bf2c16c0d3d00f6c8f0ef7e5e7efa8f was incomplete and
+"ret" was being used instead of prop_val to set some of those
+properties. It's likely your laptop would have been seen as
+docked for example.
+---
+diff --git a/libupower-glib/up-client.c b/libupower-glib/up-client.c
+index 757e4a1..2334a68 100644
+--- a/libupower-glib/up-client.c
++++ b/libupower-glib/up-client.c
+@@ -360,7 +360,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+
+ prop_val = g_value_get_boolean (value) && allowed;
+ if (prop_val != client->priv->can_suspend) {
+- client->priv->can_suspend = ret;
++ client->priv->can_suspend = prop_val;
+ g_object_notify (G_OBJECT(client), "can-suspend");
+ }
+
+@@ -376,7 +376,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+
+ prop_val = g_value_get_boolean (value) && allowed;
+ if (prop_val != client->priv->can_hibernate) {
+- client->priv->can_hibernate = ret;
++ client->priv->can_hibernate = prop_val;
+ g_object_notify (G_OBJECT(client), "can-hibernate");
+ }
+ #endif /* ENABLE_DEPRECATED */
+@@ -388,7 +388,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ }
+ prop_val = g_value_get_boolean (value);
+ if (prop_val != client->priv->lid_is_closed) {
+- client->priv->lid_is_closed = ret;
++ client->priv->lid_is_closed = prop_val;
+ g_object_notify (G_OBJECT(client), "lid-is-closed");
+ }
+
+@@ -399,7 +399,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ }
+ prop_val = g_value_get_boolean (value);
+ if (prop_val != client->priv->on_battery) {
+- client->priv->on_battery = ret;
++ client->priv->on_battery = prop_val;
+ g_object_notify (G_OBJECT(client), "on-battery");
+ }
+
+@@ -410,7 +410,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ }
+ prop_val = g_value_get_boolean (value);
+ if (prop_val != client->priv->on_low_battery) {
+- client->priv->on_low_battery = ret;
++ client->priv->on_low_battery = prop_val;
+ g_object_notify (G_OBJECT(client), "on-low-battery");
+ }
+
+@@ -421,7 +421,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ }
+ prop_val = g_value_get_boolean (value);
+ if (prop_val != client->priv->lid_is_present) {
+- client->priv->lid_is_present = ret;
++ client->priv->lid_is_present = prop_val;
+ g_object_notify (G_OBJECT(client), "lid-is-present");
+ }
+
+@@ -431,8 +431,8 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ goto out;
+ }
+ prop_val = g_value_get_boolean (value);
+- if (ret != client->priv->is_docked) {
+- client->priv->is_docked = ret;
++ if (prop_val != client->priv->is_docked) {
++ client->priv->is_docked = prop_val;
+ g_object_notify (G_OBJECT(client), "is-docked");
+ }
+
+@@ -443,7 +443,7 @@ up_client_get_properties_sync (UpClient *client, GCancellable *cancellable, GErr
+ }
+ prop_val = g_value_get_boolean (value);
+ if (prop_val != client->priv->lid_force_sleep) {
+- client->priv->lid_force_sleep = ret;
++ client->priv->lid_force_sleep = prop_val;
+ g_object_notify (G_OBJECT(client), "lid-force-sleep");
+ }
+
+--
+cgit v0.9.0.2-2-gbebe
+From d43ab28a29420a61d031908abbf1d13b2cb35796 Mon Sep 17 00:00:00 2001
+From: Bastien Nocera <hadess@hadess.net>
+Date: Thu, 10 Oct 2013 16:59:08 +0000
+Subject: lib: Fix a small memory leak
+
+The bus was never unreferenced in the UpWakeups object.
+---
+diff --git a/libupower-glib/up-wakeups.c b/libupower-glib/up-wakeups.c
+index 3729ad7..ed6bf80 100644
+--- a/libupower-glib/up-wakeups.c
++++ b/libupower-glib/up-wakeups.c
+@@ -377,6 +377,8 @@ up_wakeups_finalize (GObject *object)
+ g_object_unref (wakeups->priv->proxy);
+ if (wakeups->priv->prop_proxy != NULL)
+ g_object_unref (wakeups->priv->prop_proxy);
++ if (wakeups->priv->bus)
++ dbus_g_connection_unref (wakeups->priv->bus);
+
+ G_OBJECT_CLASS (up_wakeups_parent_class)->finalize (object);
+ }
+--
+cgit v0.9.0.2-2-gbebe