From ff8c3d208ef19d6905e85b5a0191bcc299bb5fe5 Mon Sep 17 00:00:00 2001 From: Pauli Virtanen Date: Wed, 6 Oct 2021 19:27:34 +0300 Subject: [PATCH] bluez5: fix msbc connect probe again There's a report that on Intel 8086:2723 + Sony WH-1000XM4, the connect probe shuts the device down. So, use an invalid dst address instead, since we don't need the host to be up. Fixes: 84bc0490a551 Fixes: 717004334b02 --- spa/plugins/bluez5/backend-native.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/spa/plugins/bluez5/backend-native.c b/spa/plugins/bluez5/backend-native.c index 6ed5e9254..099bef6d9 100644 --- a/spa/plugins/bluez5/backend-native.c +++ b/spa/plugins/bluez5/backend-native.c @@ -586,21 +586,19 @@ static bool device_supports_required_mSBC_transport_modes( } else { struct sockaddr_sco addr; socklen_t len; - bdaddr_t dst; int res; - /* Connect to device */ - str2ba(device->address, &dst); + /* Connect to non-existent address */ len = sizeof(addr); memset(&addr, 0, len); addr.sco_family = AF_BLUETOOTH; - bacpy(&addr.sco_bdaddr, &dst); + bacpy(&addr.sco_bdaddr, BDADDR_LOCAL); spa_log_debug(backend->log, "connect to determine adapter msbc support..."); /* Linux kernel code checks for features needed for BT_VOICE_TRANSPARENT * among the first checks it does, and fails with EOPNOTSUPP if not - * supported. The connection to self generally timeouts, so set it + * supported. The connection to generally timeouts, so set it * nonblocking since we are just checking. */ fcntl(sock, F_SETFL, O_NONBLOCK);