On Sun, 2013-11-17 at 18:05 +0200, Luiz Augusto von Dentz wrote: > Hi Tanu, > > On Fri, Nov 15, 2013 at 4:29 PM, Tanu Kaskinen > <tanu.kaskinen at linux.intel.com> wrote: > > When parsing device properties, missing adapter will result in > > device_info_valid being set to -1. It is then logical that if the > > adapter goes missing at a later point, device_info_valid gets set to > > -1 also in that situation. > > --- > > src/modules/bluetooth/bluez5-util.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/src/modules/bluetooth/bluez5-util.c b/src/modules/bluetooth/bluez5-util.c > > index 73e65d1..c8ff219 100644 > > --- a/src/modules/bluetooth/bluez5-util.c > > +++ b/src/modules/bluetooth/bluez5-util.c > > @@ -477,8 +477,10 @@ static void adapter_free(pa_bluetooth_adapter *a) { > > pa_assert(a->discovery); > > > > PA_HASHMAP_FOREACH(d, a->discovery->devices, state) > > - if (d->adapter == a) > > + if (d->adapter == a) { > > + set_device_info_valid(d, -1); > > d->adapter = NULL; > > + } > > > > pa_xfree(a->path); > > pa_xfree(a->address); > > -- > > 1.8.3.1 > > Is this some bug in BlueZ Im not aware of? There is an Adapter > property that should always be present, if the adapter goes away we > should probably cleanup its devices as their are no use without the > adapter. Note the adapter will only disappear if it is really > unplugged, if the adapter is just powered down it will continue to be > present, so Im not really sure what is benefit of having a invalid > devices around. No, this is not a fix for any particular real-world problem that I'm having. I'm just making the code consistent with regard to missing adapter handling. I guess by "we should probably cleanup its devices" you mean that we should remove devices that belong to the removed adapter. I disagree. We should keep in sync with the state of BlueZ. If BlueZ removes the devices when the adapter is removed, then PA will remove the device too when it gets the InterfacesRemoved signal for the devices. If BlueZ keeps the devices around, PA should keep them around too. -- Tanu