[arch-commits] Commit in bluez/trunk (PKGBUILD fixes_order_InterfaceAdded.diff)
Andreas Radke
andyrtr at archlinux.org
Sun Feb 11 09:14:34 UTC 2018
Date: Sunday, February 11, 2018 @ 09:14:34
Author: andyrtr
Revision: 316602
upgpkg: bluez 5.48-2
apply upstream fix to allow headset use after suspend/resume - FS#57464
Added:
bluez/trunk/fixes_order_InterfaceAdded.diff
Modified:
bluez/trunk/PKGBUILD
---------------------------------+
PKGBUILD | 9 ++++
fixes_order_InterfaceAdded.diff | 72 ++++++++++++++++++++++++++++++++++++++
2 files changed, 80 insertions(+), 1 deletion(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2018-02-11 09:11:48 UTC (rev 316601)
+++ PKGBUILD 2018-02-11 09:14:34 UTC (rev 316602)
@@ -6,19 +6,26 @@
pkgbase=bluez
pkgname=('bluez' 'bluez-utils' 'bluez-libs' 'bluez-cups' 'bluez-hid2hci' 'bluez-plugins')
pkgver=5.48
-pkgrel=1
+pkgrel=2
url="http://www.bluez.org/"
arch=('x86_64')
license=('GPL2')
makedepends=('dbus' 'libical' 'systemd' 'alsa-lib')
source=(https://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.{xz,sign}
+ fixes_order_InterfaceAdded.diff
bluetooth.modprobe)
# see https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc
sha256sums=('b9a8723072ef66bae7ec301c774902ebcb444c9c5b149b5a199e60a1ba970e90'
'SKIP'
+ '56e4bf467b285e4c6bc50eafc88f471e3683f3c3c76afe0ffe2bd6f0d17a1eae'
'46c021be659c9a1c4e55afd04df0c059af1f3d98a96338236412e449bf7477b4')
validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # Marcel Holtmann <marcel at holtmann.org>
+prepare() {
+ cd $pkgname-$pkgver
+ patch -Np1 -i $srcdir/fixes_order_InterfaceAdded.diff
+}
+
build() {
cd ${pkgname}-${pkgver}
./configure \
Added: fixes_order_InterfaceAdded.diff
===================================================================
--- fixes_order_InterfaceAdded.diff (rev 0)
+++ fixes_order_InterfaceAdded.diff 2018-02-11 09:14:34 UTC (rev 316602)
@@ -0,0 +1,72 @@
+From 1873096352f518d3247f8efb3c2e0aa8804e50ac Mon Sep 17 00:00:00 2001
+From: Luiz Augusto von Dentz <luiz.von.dentz at intel.com>
+Date: Wed, 7 Feb 2018 09:35:07 -0200
+Subject: core: Fixes order InterfaceAdded
+
+Registering on the callback of MGMT_OP_READ_ADV_FEATURES causes
+InterfacesAdded to be reschedule after the device objects which causes
+tools such as PulseAudio to consider it invalid.
+
+Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1534857
+---
+ src/advertising.c | 28 +++++++++++++++-------------
+ 1 file changed, 15 insertions(+), 13 deletions(-)
+
+diff --git a/src/advertising.c b/src/advertising.c
+index 94a8c40..970c3d8 100644
+--- a/src/advertising.c
++++ b/src/advertising.c
+@@ -1032,14 +1032,6 @@ static void read_adv_features_callback(uint8_t status, uint16_t length,
+ if (manager->max_ads == 0)
+ return;
+
+- if (!g_dbus_register_interface(btd_get_dbus_connection(),
+- adapter_get_path(manager->adapter),
+- LE_ADVERTISING_MGR_IFACE, methods,
+- NULL, properties, manager, NULL)) {
+- error("Failed to register " LE_ADVERTISING_MGR_IFACE);
+- return;
+- }
+-
+ /* Reset existing instances */
+ if (feat->num_instances)
+ remove_advertising(manager, 0);
+@@ -1061,19 +1053,29 @@ static struct btd_adv_manager *manager_create(struct btd_adapter *adapter)
+ }
+
+ manager->mgmt_index = btd_adapter_get_index(adapter);
++ manager->clients = queue_new();
++ manager->supported_flags = MGMT_ADV_FLAG_LOCAL_NAME;
++
++ if (!g_dbus_register_interface(btd_get_dbus_connection(),
++ adapter_get_path(manager->adapter),
++ LE_ADVERTISING_MGR_IFACE, methods,
++ NULL, properties, manager, NULL)) {
++ error("Failed to register " LE_ADVERTISING_MGR_IFACE);
++ goto fail;
++ }
+
+ if (!mgmt_send(manager->mgmt, MGMT_OP_READ_ADV_FEATURES,
+ manager->mgmt_index, 0, NULL,
+ read_adv_features_callback, manager, NULL)) {
+ error("Failed to read advertising features");
+- manager_destroy(manager);
+- return NULL;
++ goto fail;
+ }
+
+- manager->clients = queue_new();
+- manager->supported_flags = MGMT_ADV_FLAG_LOCAL_NAME;
+-
+ return manager;
++
++fail:
++ manager_destroy(manager);
++ return NULL;
+ }
+
+ struct btd_adv_manager *btd_adv_manager_new(struct btd_adapter *adapter)
+--
+cgit v1.1
+
+
More information about the arch-commits
mailing list