On Tue, 2012-05-29 at 14:06 +0200, Fr?d?ric Danis wrote: > PropertyChanged signal of org.BlueZ.MediaTransport is processed in > pa_bluetooth_transport_parse_property() which updates t->nrec. > This is called by : > - First by filter_cb() of bluetooth-util.c > - Then by filter_cb()of module-bluetooth-device.c which retrieve value > of t->nrec before calling parse function, then it checks if t->nrec > has changed before updating bluetooth.nrec property. > As t->nrec has alreday been changed during first process, property > update is never performed. Just so that other reviewers know: this patch was discussed in irc, and Fr?d?ric agreed to fix the bug in another way: - Create a new hook in pa_bluetooth_transport: PA_BLUETOOTH_TRANSPORT_HOOK_NREC_CHANGED. - The hook is fired by bluetooth-util.c when the transport's NREC property changes. - module-bluetooth-device.c won't listen the PropertyChanged signal of MediaTransport anymore. Instead, it will use the hook in pa_bluetooth_transport to get a notification when the NREC property changes, and update the sink or source proplist accordingly. -- Tanu