On Mon, 2016-08-22 at 17:53 +0300, Tanu Kaskinen wrote: > If a device has two profiles, the old code would start the wait timer > when the first profile connects, but when the second profile connects, > the timer would not get stopped and the CONNECTION_CHANGED hook would > not get fired, because the code for that was inside an if block that > only gets executed when the first profile connects. As a result, > module-bluez5-device loading would always be delayed until the wait > timeout expires. > --- > src/modules/bluetooth/bluez5-util.c | 30 +++++++++++++++--------------- > 1 file changed, 15 insertions(+), 15 deletions(-) This patch doesn't fix everything that's wrong with the logic. I attached an updated patch to https://bugs.freedesktop.org/show_bug.cgi?id=100237 Once the bug reporter confirms that the patch works, I'll submit the patch to the mailing list too. (I can't test the patch myself, because I have trouble getting bluetooth work at all on this machine.) -- Tanu https://www.patreon.com/tanuk