pa_bluetooth_transport_put() assigns the transport to the device's transports array, so the caller doesn't have to do that. --- src/modules/bluetooth/backend-native.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/bluetooth/backend-native.c b/src/modules/bluetooth/backend-native.c index 8d9d95c..222e33b 100644 --- a/src/modules/bluetooth/backend-native.c +++ b/src/modules/bluetooth/backend-native.c @@ -351,7 +351,7 @@ static DBusMessage *profile_new_connection(DBusConnection *conn, DBusMessage *m, p = PA_BLUETOOTH_PROFILE_HEADSET_HEAD_UNIT; pathfd = pa_sprintf_malloc ("%s/fd%d", path, fd); - d->transports[p] = t = pa_bluetooth_transport_new(d, sender, pathfd, p, NULL, 0); + t = pa_bluetooth_transport_new(d, sender, pathfd, p, NULL, 0); pa_xfree(pathfd); t->acquire = bluez5_sco_acquire_cb; -- 2.8.1