From 7ae9d8deb641c3f9f14ea7bcda64ecf6da581436 Mon Sep 17 00:00:00 2001 From: luoxu Date: Mon, 17 Nov 2025 14:33:53 +0800 Subject: [PATCH 1/2] fix(ble_mesh): resolve C++ compilation issue in net.h Closes https://github.com/espressif/esp-idf/issues/17868 --- components/bt/esp_ble_mesh/core/net.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/bt/esp_ble_mesh/core/net.h b/components/bt/esp_ble_mesh/core/net.h index 1141bd2bd95..b5f5ff0a784 100644 --- a/components/bt/esp_ble_mesh/core/net.h +++ b/components/bt/esp_ble_mesh/core/net.h @@ -472,7 +472,8 @@ void bt_mesh_generic_net_recv(struct net_buf_simple *data, static inline void bt_mesh_net_recv(struct net_buf_simple *data, int8_t rssi, enum bt_mesh_net_if net_if) { - struct bt_mesh_net_rx rx = { .ctx.recv_rssi = rssi }; + struct bt_mesh_net_rx rx = {0}; + rx.ctx.recv_rssi = rssi; #if CONFIG_BLE_MESH_EXT_ADV rx.ctx.enh.adv_cfg_used = false; rx.ctx.enh.ext_adv_cfg_used = false; From e4f514ae108538050ff393eb961c1bb0adf8bdac Mon Sep 17 00:00:00 2001 From: luoxu Date: Mon, 17 Nov 2025 14:43:33 +0800 Subject: [PATCH 2/2] fix(ble_mesh): add type casting for adv data pointer --- components/bt/esp_ble_mesh/core/nimble_host/adapter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/bt/esp_ble_mesh/core/nimble_host/adapter.c b/components/bt/esp_ble_mesh/core/nimble_host/adapter.c index 4d598a333e2..1992fb87b3c 100644 --- a/components/bt/esp_ble_mesh/core/nimble_host/adapter.c +++ b/components/bt/esp_ble_mesh/core/nimble_host/adapter.c @@ -474,7 +474,7 @@ void bt_mesh_ble_ext_adv_report(struct ble_gap_ext_disc_desc *desc) /* Here, only a shallow copy needs to be implemented; * deep copying behavior occurs in btc_ble_mesh_ble_copy_req_data. */ - adv_rpt.data = desc->length_data ? desc->data : NULL; + adv_rpt.data = desc->length_data ? (uint8_t *)desc->data : NULL; adv_rpt.event_type = desc->props; adv_rpt.addr_type = desc->addr.type;