Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 63f407ac authored by Myles Watson's avatar Myles Watson Committed by Andre Eisenbach
Browse files

Remove casts to unions to avoid unaligned accesses

Bug: 65392204
Test: sanity
Change-Id: I2886cc02289b68710e83147ba4d7715a32a4fc55
(cherry picked from commit f681e216)
Merged-In: I2886cc02289b68710e83147ba4d7715a32a4fc55
parent 2d8c6435
Loading
Loading
Loading
Loading
+75 −37
Original line number Original line Diff line number Diff line
@@ -627,7 +627,9 @@ bool bta_jv_check_psm(uint16_t psm) {
void bta_jv_enable(tBTA_JV_MSG* p_data) {
void bta_jv_enable(tBTA_JV_MSG* p_data) {
  tBTA_JV_STATUS status = BTA_JV_SUCCESS;
  tBTA_JV_STATUS status = BTA_JV_SUCCESS;
  bta_jv_cb.p_dm_cback = p_data->enable.p_cback;
  bta_jv_cb.p_dm_cback = p_data->enable.p_cback;
  bta_jv_cb.p_dm_cback(BTA_JV_ENABLE_EVT, (tBTA_JV*)&status, 0);
  tBTA_JV bta_jv;
  bta_jv.status = status;
  bta_jv_cb.p_dm_cback(BTA_JV_ENABLE_EVT, &bta_jv, 0);
  memset(bta_jv_cb.free_psm_list, 0, sizeof(bta_jv_cb.free_psm_list));
  memset(bta_jv_cb.free_psm_list, 0, sizeof(bta_jv_cb.free_psm_list));
}
}


@@ -718,9 +720,12 @@ void bta_jv_get_channel_id(tBTA_JV_MSG* p_data) {
        bta_jv_cb.scn[channel - 1] = true;
        bta_jv_cb.scn[channel - 1] = true;
        scn = (uint8_t)channel;
        scn = (uint8_t)channel;
      }
      }
      if (bta_jv_cb.p_dm_cback)
      if (bta_jv_cb.p_dm_cback) {
        bta_jv_cb.p_dm_cback(BTA_JV_GET_SCN_EVT, (tBTA_JV*)&scn,
        tBTA_JV bta_jv;
        bta_jv.scn = scn;
        bta_jv_cb.p_dm_cback(BTA_JV_GET_SCN_EVT, &bta_jv,
                             p_data->alloc_channel.rfcomm_slot_id);
                             p_data->alloc_channel.rfcomm_slot_id);
      }
      return;
      return;
    }
    }
    case BTA_JV_CONN_TYPE_L2CAP:
    case BTA_JV_CONN_TYPE_L2CAP:
@@ -736,10 +741,13 @@ void bta_jv_get_channel_id(tBTA_JV_MSG* p_data) {
      break;
      break;
  }
  }


  if (bta_jv_cb.p_dm_cback)
  if (bta_jv_cb.p_dm_cback) {
    bta_jv_cb.p_dm_cback(BTA_JV_GET_PSM_EVT, (tBTA_JV*)&psm,
    tBTA_JV bta_jv;
    bta_jv.psm = psm;
    bta_jv_cb.p_dm_cback(BTA_JV_GET_PSM_EVT, &bta_jv,
                         p_data->alloc_channel.l2cap_socket_id);
                         p_data->alloc_channel.l2cap_socket_id);
  }
  }
}


/*******************************************************************************
/*******************************************************************************
 *
 *
@@ -840,8 +848,9 @@ static void bta_jv_start_discovery_cback(uint16_t result, void* user_data) {
    }
    }


    dcomp.status = status;
    dcomp.status = status;
    bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, (tBTA_JV*)&dcomp,
    tBTA_JV bta_jv;
                         *p_rfcomm_slot_id);
    bta_jv.disc_comp = dcomp;
    bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, &bta_jv, *p_rfcomm_slot_id);
    osi_free(p_rfcomm_slot_id);
    osi_free(p_rfcomm_slot_id);
  }
  }
}
}
@@ -862,9 +871,12 @@ void bta_jv_start_discovery(tBTA_JV_MSG* p_data) {
  if (bta_jv_cb.sdp_active != BTA_JV_SDP_ACT_NONE) {
  if (bta_jv_cb.sdp_active != BTA_JV_SDP_ACT_NONE) {
    /* SDP is still in progress */
    /* SDP is still in progress */
    status = BTA_JV_BUSY;
    status = BTA_JV_BUSY;
    if (bta_jv_cb.p_dm_cback)
    if (bta_jv_cb.p_dm_cback) {
      bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, (tBTA_JV*)&status,
      tBTA_JV bta_jv;
      bta_jv.status = status;
      bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, &bta_jv,
                           p_data->start_discovery.rfcomm_slot_id);
                           p_data->start_discovery.rfcomm_slot_id);
    }
    return;
    return;
  }
  }


@@ -893,10 +905,13 @@ void bta_jv_start_discovery(tBTA_JV_MSG* p_data) {
          bta_jv_start_discovery_cback, (void*)rfcomm_slot_id)) {
          bta_jv_start_discovery_cback, (void*)rfcomm_slot_id)) {
    bta_jv_cb.sdp_active = BTA_JV_SDP_ACT_NONE;
    bta_jv_cb.sdp_active = BTA_JV_SDP_ACT_NONE;
    /* failed to start SDP. report the failure right away */
    /* failed to start SDP. report the failure right away */
    if (bta_jv_cb.p_dm_cback)
    if (bta_jv_cb.p_dm_cback) {
      bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, (tBTA_JV*)&status,
      tBTA_JV bta_jv;
      bta_jv.status = status;
      bta_jv_cb.p_dm_cback(BTA_JV_DISCOVERY_COMP_EVT, &bta_jv,
                           p_data->start_discovery.rfcomm_slot_id);
                           p_data->start_discovery.rfcomm_slot_id);
    }
    }
  }
  /*
  /*
  else report the result when the cback is called
  else report the result when the cback is called
  */
  */
@@ -915,11 +930,12 @@ void bta_jv_create_record(tBTA_JV_MSG* p_data) {
  tBTA_JV_API_CREATE_RECORD* cr = &(p_data->create_record);
  tBTA_JV_API_CREATE_RECORD* cr = &(p_data->create_record);
  tBTA_JV_CREATE_RECORD evt_data;
  tBTA_JV_CREATE_RECORD evt_data;
  evt_data.status = BTA_JV_SUCCESS;
  evt_data.status = BTA_JV_SUCCESS;
  if (bta_jv_cb.p_dm_cback)
  if (bta_jv_cb.p_dm_cback) {
    // callback user immediately to create his own sdp record in stack thread
    // callback immediately to create the sdp record in stack thread context
    // context
    tBTA_JV bta_jv;
    bta_jv_cb.p_dm_cback(BTA_JV_CREATE_RECORD_EVT, (tBTA_JV*)&evt_data,
    bta_jv.create_rec = evt_data;
                         cr->rfcomm_slot_id);
    bta_jv_cb.p_dm_cback(BTA_JV_CREATE_RECORD_EVT, &bta_jv, cr->rfcomm_slot_id);
  }
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1072,9 +1088,11 @@ void bta_jv_l2cap_connect(tBTA_JV_MSG* p_data) {
  }
  }


  evt_data.handle = handle;
  evt_data.handle = handle;
  if (cc->p_cback)
  if (cc->p_cback) {
    cc->p_cback(BTA_JV_L2CAP_CL_INIT_EVT, (tBTA_JV*)&evt_data,
    tBTA_JV bta_jv;
                cc->l2cap_socket_id);
    bta_jv.l2c_cl_init = evt_data;
    cc->p_cback(BTA_JV_L2CAP_CL_INIT_EVT, &bta_jv, cc->l2cap_socket_id);
  }
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1096,8 +1114,11 @@ void bta_jv_l2cap_close(tBTA_JV_MSG* p_data) {
  evt_data.status = bta_jv_free_l2c_cb(cc->p_cb);
  evt_data.status = bta_jv_free_l2c_cb(cc->p_cb);
  evt_data.async = false;
  evt_data.async = false;


  if (p_cback)
  if (p_cback) {
    p_cback(BTA_JV_L2CAP_CLOSE_EVT, (tBTA_JV*)&evt_data, l2cap_socket_id);
    tBTA_JV bta_jv;
    bta_jv.l2c_close = evt_data;
    p_cback(BTA_JV_L2CAP_CLOSE_EVT, &bta_jv, l2cap_socket_id);
  }
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1231,9 +1252,11 @@ void bta_jv_l2cap_start_server(tBTA_JV_MSG* p_data) {
    p_cb->psm = ls->local_psm;
    p_cb->psm = ls->local_psm;
  }
  }


  if (ls->p_cback)
  if (ls->p_cback) {
    ls->p_cback(BTA_JV_L2CAP_START_EVT, (tBTA_JV*)&evt_data,
    tBTA_JV bta_jv;
                ls->l2cap_socket_id);
    bta_jv.l2c_start = evt_data;
    ls->p_cback(BTA_JV_L2CAP_START_EVT, &bta_jv, ls->l2cap_socket_id);
  }
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1258,8 +1281,11 @@ void bta_jv_l2cap_stop_server(tBTA_JV_MSG* p_data) {
      evt_data.handle = p_cb->handle;
      evt_data.handle = p_cb->handle;
      evt_data.status = bta_jv_free_l2c_cb(p_cb);
      evt_data.status = bta_jv_free_l2c_cb(p_cb);
      evt_data.async = false;
      evt_data.async = false;
      if (p_cback)
      if (p_cback) {
        p_cback(BTA_JV_L2CAP_CLOSE_EVT, (tBTA_JV*)&evt_data, l2cap_socket_id);
        tBTA_JV bta_jv;
        bta_jv.l2c_close = evt_data;
        p_cback(BTA_JV_L2CAP_CLOSE_EVT, &bta_jv, l2cap_socket_id);
      }
      break;
      break;
    }
    }
  }
  }
@@ -1289,7 +1315,9 @@ void bta_jv_l2cap_read(tBTA_JV_MSG* p_data) {
    evt_data.status = BTA_JV_SUCCESS;
    evt_data.status = BTA_JV_SUCCESS;
  }
  }


  rc->p_cback(BTA_JV_L2CAP_READ_EVT, (tBTA_JV*)&evt_data, rc->l2cap_socket_id);
  tBTA_JV bta_jv;
  bta_jv.l2c_read = evt_data;
  rc->p_cback(BTA_JV_L2CAP_READ_EVT, &bta_jv, rc->l2cap_socket_id);
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1341,7 +1369,9 @@ void bta_jv_l2cap_write(tBTA_JV_MSG* p_data) {
            GAP_ConnWriteData(ls->handle, ls->p_data, ls->len, &evt_data.len)) {
            GAP_ConnWriteData(ls->handle, ls->p_data, ls->len, &evt_data.len)) {
      evt_data.status = BTA_JV_SUCCESS;
      evt_data.status = BTA_JV_SUCCESS;
    }
    }
    ls->p_cb->p_cback(BTA_JV_L2CAP_WRITE_EVT, (tBTA_JV*)&evt_data, ls->user_id);
    tBTA_JV bta_jv;
    bta_jv.l2c_write = evt_data;
    ls->p_cb->p_cback(BTA_JV_L2CAP_WRITE_EVT, &bta_jv, ls->user_id);
  } else {
  } else {
    /* As this pointer is checked in the API function, this occurs only when the
    /* As this pointer is checked in the API function, this occurs only when the
     * channel is
     * channel is
@@ -1379,7 +1409,9 @@ void bta_jv_l2cap_write_fixed(tBTA_JV_MSG* p_data) {


  L2CA_SendFixedChnlData(ls->channel, ls->addr, msg);
  L2CA_SendFixedChnlData(ls->channel, ls->addr, msg);


  ls->p_cback(BTA_JV_L2CAP_WRITE_FIXED_EVT, (tBTA_JV*)&evt_data, ls->user_id);
  tBTA_JV bta_jv;
  bta_jv.l2c_write_fixed = evt_data;
  ls->p_cback(BTA_JV_L2CAP_WRITE_FIXED_EVT, &bta_jv, ls->user_id);
}
}


/*******************************************************************************
/*******************************************************************************
@@ -1570,9 +1602,10 @@ void bta_jv_rfcomm_connect(tBTA_JV_MSG* p_data) {
      APPL_TRACE_ERROR("run out of rfc control block");
      APPL_TRACE_ERROR("run out of rfc control block");
    }
    }
  }
  }
  cc->p_cback(BTA_JV_RFCOMM_CL_INIT_EVT, (tBTA_JV*)&evt_data,
  tBTA_JV bta_jv;
              cc->rfcomm_slot_id);
  bta_jv.rfc_cl_init = evt_data;
  if (evt_data.status == BTA_JV_FAILURE) {
  cc->p_cback(BTA_JV_RFCOMM_CL_INIT_EVT, &bta_jv, cc->rfcomm_slot_id);
  if (bta_jv.rfc_cl_init.status == BTA_JV_FAILURE) {
    if (sec_id) bta_jv_free_sec_id(&sec_id);
    if (sec_id) bta_jv_free_sec_id(&sec_id);
    if (handle) RFCOMM_RemoveConnection(handle);
    if (handle) RFCOMM_RemoveConnection(handle);
  }
  }
@@ -1893,8 +1926,10 @@ void bta_jv_rfcomm_start_server(tBTA_JV_MSG* p_data) {
    PORT_SetState(handle, &port_state);
    PORT_SetState(handle, &port_state);
  } while (0);
  } while (0);


  rs->p_cback(BTA_JV_RFCOMM_START_EVT, (tBTA_JV*)&evt_data, rs->rfcomm_slot_id);
  tBTA_JV bta_jv;
  if (evt_data.status == BTA_JV_SUCCESS) {
  bta_jv.rfc_start = evt_data;
  rs->p_cback(BTA_JV_RFCOMM_START_EVT, &bta_jv, rs->rfcomm_slot_id);
  if (bta_jv.rfc_start.status == BTA_JV_SUCCESS) {
    PORT_SetDataCOCallback(handle, bta_jv_port_data_co_cback);
    PORT_SetDataCOCallback(handle, bta_jv_port_data_co_cback);
  } else {
  } else {
    if (sec_id) bta_jv_free_sec_id(&sec_id);
    if (sec_id) bta_jv_free_sec_id(&sec_id);
@@ -1968,8 +2003,9 @@ void bta_jv_rfcomm_write(tBTA_JV_MSG* p_data) {
  evt_data.cong = p_pcb->cong;
  evt_data.cong = p_pcb->cong;


  if (p_cb->p_cback) {
  if (p_cb->p_cback) {
    p_cb->p_cback(BTA_JV_RFCOMM_WRITE_EVT, (tBTA_JV*)&evt_data,
    tBTA_JV bta_jv;
                  p_pcb->rfcomm_slot_id);
    bta_jv.rfc_write = evt_data;
    p_cb->p_cback(BTA_JV_RFCOMM_WRITE_EVT, &bta_jv, p_pcb->rfcomm_slot_id);
  } else {
  } else {
    APPL_TRACE_ERROR("%s No JV callback set", __func__);
    APPL_TRACE_ERROR("%s No JV callback set", __func__);
  }
  }
@@ -2519,7 +2555,9 @@ void bta_jv_l2cap_start_server_le(tBTA_JV_MSG* p_data) {
  evt_data.sec_id = t->sec_id;
  evt_data.sec_id = t->sec_id;


out:
out:
  ss->p_cback(BTA_JV_L2CAP_START_EVT, (tBTA_JV*)&evt_data, ss->l2cap_socket_id);
  tBTA_JV bta_jv;
  bta_jv.l2c_start = evt_data;
  ss->p_cback(BTA_JV_L2CAP_START_EVT, &bta_jv, ss->l2cap_socket_id);
}
}


/*******************************************************************************
/*******************************************************************************
+16 −9
Original line number Original line Diff line number Diff line
@@ -111,8 +111,9 @@ static void bta_mce_search_cback(uint16_t result, void* user_data) {
    evt_data.status = BTA_MCE_SUCCESS;
    evt_data.status = BTA_MCE_SUCCESS;
  }
  }


  bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, (tBTA_MCE*)&evt_data,
  tBTA_MCE bta_mce;
                        user_data);
  bta_mce.mas_disc_comp = evt_data;
  bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, &bta_mce, user_data);
}
}


/*******************************************************************************
/*******************************************************************************
@@ -127,7 +128,9 @@ static void bta_mce_search_cback(uint16_t result, void* user_data) {
void bta_mce_enable(tBTA_MCE_MSG* p_data) {
void bta_mce_enable(tBTA_MCE_MSG* p_data) {
  tBTA_MCE_STATUS status = BTA_MCE_SUCCESS;
  tBTA_MCE_STATUS status = BTA_MCE_SUCCESS;
  bta_mce_cb.p_dm_cback = p_data->enable.p_cback;
  bta_mce_cb.p_dm_cback = p_data->enable.p_cback;
  bta_mce_cb.p_dm_cback(BTA_MCE_ENABLE_EVT, (tBTA_MCE*)&status, NULL);
  tBTA_MCE bta_mce;
  bta_mce.status = status;
  bta_mce_cb.p_dm_cback(BTA_MCE_ENABLE_EVT, &bta_mce, NULL);
}
}


/*******************************************************************************
/*******************************************************************************
@@ -151,9 +154,11 @@ void bta_mce_get_remote_mas_instances(tBTA_MCE_MSG* p_data) {
  if (bta_mce_cb.sdp_active != BTA_MCE_SDP_ACT_NONE) {
  if (bta_mce_cb.sdp_active != BTA_MCE_SDP_ACT_NONE) {
    /* SDP is still in progress */
    /* SDP is still in progress */
    status = BTA_MCE_BUSY;
    status = BTA_MCE_BUSY;
    if (bta_mce_cb.p_dm_cback)
    if (bta_mce_cb.p_dm_cback) {
      bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, (tBTA_MCE*)&status,
      tBTA_MCE bta_mce;
                            NULL);
      bta_mce.status = status;
      bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, &bta_mce, NULL);
    }


    return;
    return;
  }
  }
@@ -170,9 +175,11 @@ void bta_mce_get_remote_mas_instances(tBTA_MCE_MSG* p_data) {
    bta_mce_cb.sdp_active = BTA_MCE_SDP_ACT_NONE;
    bta_mce_cb.sdp_active = BTA_MCE_SDP_ACT_NONE;


    /* failed to start SDP. report the failure right away */
    /* failed to start SDP. report the failure right away */
    if (bta_mce_cb.p_dm_cback)
    if (bta_mce_cb.p_dm_cback) {
      bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, (tBTA_MCE*)&status,
      tBTA_MCE bta_mce;
                            NULL);
      bta_mce.status = status;
      bta_mce_cb.p_dm_cback(BTA_MCE_MAS_DISCOVERY_COMP_EVT, &bta_mce, NULL);
    }
  }
  }
  /*
  /*
  else report the result when the cback is called
  else report the result when the cback is called
+12 −4
Original line number Original line Diff line number Diff line
@@ -447,7 +447,9 @@ static void bta_sdp_search_cback(uint16_t result, void* user_data) {
  }
  }
  evt_data.status = status;
  evt_data.status = status;


  bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, (tBTA_SDP*)&evt_data,
  tBTA_SDP bta_sdp;
  bta_sdp.sdp_search_comp = evt_data;
  bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, &bta_sdp,
                        (void*)&uuid->uu.uuid128);
                        (void*)&uuid->uu.uuid128);
  osi_free(user_data);  // We no longer need the user data to track the search
  osi_free(user_data);  // We no longer need the user data to track the search
}
}
@@ -465,7 +467,9 @@ void bta_sdp_enable(tBTA_SDP_MSG* p_data) {
  APPL_TRACE_DEBUG("%s in, sdp_active:%d", __func__, bta_sdp_cb.sdp_active);
  APPL_TRACE_DEBUG("%s in, sdp_active:%d", __func__, bta_sdp_cb.sdp_active);
  tBTA_SDP_STATUS status = BTA_SDP_SUCCESS;
  tBTA_SDP_STATUS status = BTA_SDP_SUCCESS;
  bta_sdp_cb.p_dm_cback = p_data->enable.p_cback;
  bta_sdp_cb.p_dm_cback = p_data->enable.p_cback;
  bta_sdp_cb.p_dm_cback(BTA_SDP_ENABLE_EVT, (tBTA_SDP*)&status, NULL);
  tBTA_SDP bta_sdp;
  bta_sdp.status = status;
  bta_sdp_cb.p_dm_cback(BTA_SDP_ENABLE_EVT, &bta_sdp, NULL);
}
}


/*******************************************************************************
/*******************************************************************************
@@ -495,7 +499,9 @@ void bta_sdp_search(tBTA_SDP_MSG* p_data) {
      result.uuid = p_data->get_search.uuid;
      result.uuid = p_data->get_search.uuid;
      result.remote_addr = p_data->get_search.bd_addr;
      result.remote_addr = p_data->get_search.bd_addr;
      result.status = status;
      result.status = status;
      bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, (tBTA_SDP*)&result, NULL);
      tBTA_SDP bta_sdp;
      bta_sdp.sdp_search_comp = result;
      bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, &bta_sdp, NULL);
    }
    }
    return;
    return;
  }
  }
@@ -528,7 +534,9 @@ void bta_sdp_search(tBTA_SDP_MSG* p_data) {
      result.uuid = p_data->get_search.uuid;
      result.uuid = p_data->get_search.uuid;
      result.remote_addr = p_data->get_search.bd_addr;
      result.remote_addr = p_data->get_search.bd_addr;
      result.status = status;
      result.status = status;
      bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, (tBTA_SDP*)&result, NULL);
      tBTA_SDP bta_sdp;
      bta_sdp.sdp_search_comp = result;
      bta_sdp_cb.p_dm_cback(BTA_SDP_SEARCH_COMP_EVT, &bta_sdp, NULL);
    }
    }
  }
  }
  /*
  /*
+18 −10
Original line number Original line Diff line number Diff line
@@ -167,7 +167,9 @@ uint16_t AVCT_CreateConn(uint8_t* p_handle, tAVCT_CC* p_cc,
        /* bind lcb to ccb */
        /* bind lcb to ccb */
        p_ccb->p_lcb = p_lcb;
        p_ccb->p_lcb = p_lcb;
        AVCT_TRACE_DEBUG("ch_state: %d", p_lcb->ch_state);
        AVCT_TRACE_DEBUG("ch_state: %d", p_lcb->ch_state);
        avct_lcb_event(p_lcb, AVCT_LCB_UL_BIND_EVT, (tAVCT_LCB_EVT*)&p_ccb);
        tAVCT_LCB_EVT avct_lcb_evt;
        avct_lcb_evt.p_ccb = p_ccb;
        avct_lcb_event(p_lcb, AVCT_LCB_UL_BIND_EVT, &avct_lcb_evt);
      }
      }
    }
    }
  }
  }
@@ -204,8 +206,9 @@ uint16_t AVCT_RemoveConn(uint8_t handle) {
  }
  }
  /* send unbind event to lcb */
  /* send unbind event to lcb */
  else {
  else {
    avct_lcb_event(p_ccb->p_lcb, AVCT_LCB_UL_UNBIND_EVT,
    tAVCT_LCB_EVT avct_lcb_evt;
                   (tAVCT_LCB_EVT*)&p_ccb);
    avct_lcb_evt.p_ccb = p_ccb;
    avct_lcb_event(p_ccb->p_lcb, AVCT_LCB_UL_UNBIND_EVT, &avct_lcb_evt);
  }
  }
  return result;
  return result;
}
}
@@ -268,7 +271,9 @@ uint16_t AVCT_CreateBrowse(uint8_t handle, uint8_t role) {
      p_ccb->p_bcb = p_bcb;
      p_ccb->p_bcb = p_bcb;
      p_bcb->peer_addr = p_ccb->p_lcb->peer_addr;
      p_bcb->peer_addr = p_ccb->p_lcb->peer_addr;
      AVCT_TRACE_DEBUG("ch_state: %d", p_bcb->ch_state);
      AVCT_TRACE_DEBUG("ch_state: %d", p_bcb->ch_state);
      avct_bcb_event(p_bcb, AVCT_LCB_UL_BIND_EVT, (tAVCT_LCB_EVT*)&p_ccb);
      tAVCT_LCB_EVT avct_lcb_evt;
      avct_lcb_evt.p_ccb = p_ccb;
      avct_bcb_event(p_bcb, AVCT_LCB_UL_BIND_EVT, &avct_lcb_evt);
    }
    }
  }
  }


@@ -301,8 +306,9 @@ uint16_t AVCT_RemoveBrowse(uint8_t handle) {
  } else if (p_ccb->p_bcb != NULL)
  } else if (p_ccb->p_bcb != NULL)
  /* send unbind event to bcb */
  /* send unbind event to bcb */
  {
  {
    avct_bcb_event(p_ccb->p_bcb, AVCT_LCB_UL_UNBIND_EVT,
    tAVCT_LCB_EVT avct_lcb_evt;
                   (tAVCT_LCB_EVT*)&p_ccb);
    avct_lcb_evt.p_ccb = p_ccb;
    avct_bcb_event(p_ccb->p_bcb, AVCT_LCB_UL_UNBIND_EVT, &avct_lcb_evt);
  }
  }


  return result;
  return result;
@@ -417,14 +423,16 @@ uint16_t AVCT_MsgReq(uint8_t handle, uint8_t label, uint8_t cr, BT_HDR* p_msg) {
        osi_free(p_msg);
        osi_free(p_msg);
      } else {
      } else {
        p_ccb->p_bcb = avct_bcb_by_lcb(p_ccb->p_lcb);
        p_ccb->p_bcb = avct_bcb_by_lcb(p_ccb->p_lcb);
        avct_bcb_event(p_ccb->p_bcb, AVCT_LCB_UL_MSG_EVT,
        tAVCT_LCB_EVT avct_lcb_evt;
                       (tAVCT_LCB_EVT*)&ul_msg);
        avct_lcb_evt.ul_msg = ul_msg;
        avct_bcb_event(p_ccb->p_bcb, AVCT_LCB_UL_MSG_EVT, &avct_lcb_evt);
      }
      }
    }
    }
    /* send msg event to lcb */
    /* send msg event to lcb */
    else {
    else {
      avct_lcb_event(p_ccb->p_lcb, AVCT_LCB_UL_MSG_EVT,
      tAVCT_LCB_EVT avct_lcb_evt;
                     (tAVCT_LCB_EVT*)&ul_msg);
      avct_lcb_evt.ul_msg = ul_msg;
      avct_lcb_event(p_ccb->p_lcb, AVCT_LCB_UL_MSG_EVT, &avct_lcb_evt);
    }
    }
  }
  }
  return result;
  return result;
+6 −2
Original line number Original line Diff line number Diff line
@@ -112,7 +112,9 @@ void avct_bcb_chnl_open(tAVCT_BCB* p_bcb, UNUSED_ATTR tAVCT_LCB_EVT* p_data) {
      L2CA_ErtmConnectReq(AVCT_BR_PSM, p_lcb->peer_addr, &ertm_info);
      L2CA_ErtmConnectReq(AVCT_BR_PSM, p_lcb->peer_addr, &ertm_info);
  if (p_bcb->ch_lcid == 0) {
  if (p_bcb->ch_lcid == 0) {
    /* if connect req failed, send ourselves close event */
    /* if connect req failed, send ourselves close event */
    avct_bcb_event(p_bcb, AVCT_LCB_LL_CLOSE_EVT, (tAVCT_LCB_EVT*)&result);
    tAVCT_LCB_EVT avct_lcb_evt;
    avct_lcb_evt.result = result;
    avct_bcb_event(p_bcb, AVCT_LCB_LL_CLOSE_EVT, &avct_lcb_evt);
  }
  }
}
}


@@ -195,7 +197,9 @@ void avct_bcb_open_ind(tAVCT_BCB* p_bcb, tAVCT_LCB_EVT* p_data) {
  p_bcb->p_tx_msg = NULL;
  p_bcb->p_tx_msg = NULL;


  /* send msg event to bcb */
  /* send msg event to bcb */
  avct_bcb_event(p_bcb, AVCT_LCB_UL_MSG_EVT, (tAVCT_LCB_EVT*)&ul_msg);
  tAVCT_LCB_EVT avct_lcb_evt;
  avct_lcb_evt.ul_msg = ul_msg;
  avct_bcb_event(p_bcb, AVCT_LCB_UL_MSG_EVT, &avct_lcb_evt);
}
}


/*******************************************************************************
/*******************************************************************************
Loading