diff options
author | 2019-02-07 13:06:39 +0000 | |
---|---|---|
committer | 2019-02-07 13:06:39 +0000 | |
commit | 2d4da5da14a328fa04ebddad33750c033523c383 (patch) | |
tree | 894a39b2714aac8e833f0257be016135cd1bc0c0 /plugins/lib/bluealsa/hal-bluealsa-transports.c | |
parent | 387d591243f8b4e40eb27cd6bde00b8cb3874ba6 (diff) | |
parent | 779366b7d9f0e16478a4c15387e26d29b6ba522e (diff) |
Merge "bluealsa plugin: monitor the state of service via dbus" into guppyguppy_7.0.1guppy_7.0.0guppy_6.99.5guppy/7.0.1guppy/7.0.0guppy/6.99.57.0.17.0.06.99.5
Diffstat (limited to 'plugins/lib/bluealsa/hal-bluealsa-transports.c')
-rw-r--r-- | plugins/lib/bluealsa/hal-bluealsa-transports.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/plugins/lib/bluealsa/hal-bluealsa-transports.c b/plugins/lib/bluealsa/hal-bluealsa-transports.c index 56e1a29..590ab5d 100644 --- a/plugins/lib/bluealsa/hal-bluealsa-transports.c +++ b/plugins/lib/bluealsa/hal-bluealsa-transports.c @@ -74,6 +74,7 @@ bool halBlueAlsaTransportFind( } + int halBlueAlsaTransportUpdate( const bluealsa_watch * watch, bluealsa_transport_t * list, @@ -129,7 +130,8 @@ static bool halBlueAlsaTransportMatch(const struct ba_msg_transport * transport1 if (transport1->type != transport2->type) goto done; - if (transport1->stream != transport2->stream) + /* with HFP/ofono, a NULL codec means a hangup. So we consider that the transport has disappeared in that case */ + if (transport1->codec != transport2->codec) goto done; if (bacmp(&transport1->addr, &transport2->addr) != 0) { @@ -146,8 +148,8 @@ char * halBlueAlsaTransportAsString(char * buff, size_t len, const struct ba_msg ba2str(&transport->addr, addr); snprintf(buff, len, "%s,%s,%s", addr, - transport->type == BA_PCM_TYPE_A2DP?"a2dp":"sco", - transport->stream == BA_PCM_STREAM_PLAYBACK?"playback":"capture"); + transport->type & BA_PCM_TYPE_A2DP?"a2dp":"sco", + transport->type & BA_PCM_STREAM_PLAYBACK?"playback":"capture"); return buff; } |