diff --git a/system/bta/hh/bta_hh_le.cc b/system/bta/hh/bta_hh_le.cc index 80740f3c23434b2675310e948991d3a1e96e4b8a..8f7b0f35b91d80c90c112d22fcf63f6d21255ba6 100644 --- a/system/bta/hh/bta_hh_le.cc +++ b/system/bta/hh/bta_hh_le.cc @@ -1591,6 +1591,10 @@ void read_pref_conn_params_cb(uint16_t conn_id, tGATT_STATUS status, uint16_t ha if (max < BTM_BLE_CONN_INT_MIN_LIMIT) max = BTM_BLE_CONN_INT_MIN_LIMIT; + // If the device has no preferred connection timeout, use the default. + if (tout == BTM_BLE_CONN_PARAM_UNDEF) + tout = BTM_BLE_CONN_TIMEOUT_DEF; + tBTA_HH_DEV_CB *p_dev_cb = (tBTA_HH_DEV_CB*)data; BTM_BleSetPrefConnParams(p_dev_cb->addr, min, max, latency, tout); L2CA_UpdateBleConnParams(p_dev_cb->addr, min, max, latency, tout);