Merge branch 'bugfix/l2cap_disconnect_timeout' into 'master'

component/bt: bugfix for L2CAP state machine to access NULL lcb during disconnection

See merge request !920
This commit is contained in:
Jiang Jiang Jian 2017-06-26 14:02:36 +08:00
commit f9abf98f46

View file

@ -926,6 +926,11 @@ void l2cu_send_peer_disc_rsp (tL2C_LCB *p_lcb, UINT8 remote_id, UINT16 local_cid
BT_HDR *p_buf;
UINT8 *p;
if (!p_lcb) {
L2CAP_TRACE_WARNING("lcb already released\n");
return;
}
if ((p_buf = l2cu_build_header(p_lcb, L2CAP_DISC_RSP_LEN, L2CAP_CMD_DISC_RSP, remote_id)) == NULL) {
L2CAP_TRACE_WARNING ("L2CAP - no buffer for disc_rsp");
return;
@ -1606,7 +1611,9 @@ void l2cu_release_ccb (tL2C_CCB *p_ccb)
p_ccb->should_free_rcb = false;
}
btm_sec_clr_temp_auth_service (p_lcb->remote_bd_addr);
if (p_lcb) {
btm_sec_clr_temp_auth_service (p_lcb->remote_bd_addr);
}
/* Stop the timer */
btu_stop_timer (&p_ccb->timer_entry);