Parent: 5cc4a1729b1473c1c00c947bbf119a78bc83647f
Author: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Committer: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: 2015-09-14 10:12:30
Tree: 04650a60d428cf7b302021946dd7c40026a35c53
obexd: Fix not destroying session if owner disconnects If the owner disconnects the session should be destroyed even if the connection is pending: obexd/client/session.c:owner_disconnected() obexd/client/session.c:obc_session_shutdown() 0x822abb8 obexd/client/session.c:obc_session_ref() 0x822abb8: ref=3 obexd/client/session.c:obc_session_unref() 0x822abb8: ref=2 obexd/client/bluetooth.c:transport_connect() port 19 obexd/client/bluetooth.c:transport_callback() obexd/client/session.c:transport_func() obexd/client/bluetooth.c:bluetooth_getpacketopt() obexd/client/pbap.c:pbap_probe() /org/bluez/obex/client/session1 obexd/client/session.c:obc_session_ref() 0x822abb8: ref=3 obexd/client/session.c:obc_session_register() Session(0x822abb8) registered /org/bluez/obex/client/session1 obexd/client/session.c:obc_session_unref() 0x822abb8: ref=2 To fix this the code now checks if the connect callback is pending, in that case destroy the callback releasing the reference it carrying.
Diffstat
| M | obexd/client/session.c | | | 34 | ++++++++++++++++++++++++++++- - - - - - |
1 files changed, 28 insertions(+), 6 deletions(-)