@@ -506,6 +506,8 @@ static void btc_gatts_cb_param_copy_req(btc_msg_t *msg, void *p_dest, void *p_sr
506506 if (p_dest_data -> req_data .p_data != NULL ) {
507507 memcpy (p_dest_data -> req_data .p_data , p_src_data -> req_data .p_data ,
508508 sizeof (tBTA_GATTS_REQ_DATA ));
509+ } else {
510+ LOG_ERROR ("%s %d no mem\n" , __func__ , msg -> act );
509511 }
510512 break ;
511513
@@ -759,6 +761,9 @@ void btc_gatts_cb_handler(btc_msg_t *msg)
759761 param .write .conn_id = BTC_GATT_GET_CONN_ID (p_data -> req_data .conn_id );
760762 param .write .trans_id = p_data -> req_data .trans_id ;
761763 memcpy (param .write .bda , p_data -> req_data .remote_bda , ESP_BD_ADDR_LEN );
764+ if (p_data -> req_data .p_data == NULL ) {
765+ break ;
766+ }
762767 param .write .handle = p_data -> req_data .p_data -> write_req .handle ;
763768 param .write .offset = p_data -> req_data .p_data -> write_req .offset ;
764769 param .write .need_rsp = p_data -> req_data .p_data -> write_req .need_rsp ;
@@ -775,6 +780,9 @@ void btc_gatts_cb_handler(btc_msg_t *msg)
775780 param .exec_write .conn_id = BTC_GATT_GET_CONN_ID (p_data -> req_data .conn_id );
776781 param .exec_write .trans_id = p_data -> req_data .trans_id ;
777782 memcpy (param .exec_write .bda , p_data -> req_data .remote_bda , ESP_BD_ADDR_LEN );
783+ if (p_data -> req_data .p_data == NULL ) {
784+ break ;
785+ }
778786 param .exec_write .exec_write_flag = p_data -> req_data .p_data -> exec_write ;
779787
780788 btc_gatts_cb_to_app (ESP_GATTS_EXEC_WRITE_EVT , gatts_if , & param );
0 commit comments